403 API-интерфейсы Forbidden for SharePoint версии НО они работают во время разработки И все остальные вызовы REST работают - PullRequest
0 голосов
/ 18 апреля 2019

У меня странная проблема, из-за которой любые API-интерфейсы REST, относящиеся к версиям SharePoint, работают при тестировании во время разработки, но генерируют ошибку 403 Forbidden во время выполнения. Также странно то, что все остальные вызовы REST API работают нормально как во время разработки, так и во время выполнения, и все параметры идентичны тем, которые не работают (заголовки и т. Д.), И я сделал вырезку и вставку для всего, но все же что-то, касающееся версий, не работает, хотя это может быть просто красная сельдь?

Приложение может успешно удалять файлы и перезаписывать их, регистрировать и извлекать данные и т. Д., Поэтому, похоже, нет проблем с разрешениями. Я также попытался проверить файл перед прочтением информации о версии на всякий случай (так как проверка обязательна, прежде чем какие-либо действия могут быть выполнены на этом сайте), но это тоже не сработало.

Это пример одного из вызовов, который вызывает ошибку:

https://mycompany.SharePoint.com/sites/{SiteName}/_api/web/GetFileByServerRelativeUrl('/sites/{SiteName}/Shared%20Documents/{FilenameAndPath}')/version

Ответы [ 2 ]

0 голосов
/ 03 июля 2019

Проверьте Принять и Тип контента в заголовках OnBeforeRequest Обратный вызов API REST.

Я обнаружил, что при тестировании IDE отправляет, например, "application/json" для обоих, но во время выполнения платформа добавляет ";utf-8" к значениям этих заголовков. Затем запросы часто отклоняются без надлежащей спецификации / объявления ошибки.

0 голосов
/ 19 апреля 2019

Посмотрите на эту запись :

https://sharepoint/_api/web/folders/getbyurl('Documents')/files/getbyurl('myfile.docx')/versions?$filter=VersionLabel eq '2.0'
...