我有一个奇怪的问题,即与SharePoint版本相关的所有REST API在设计时进行测试时都可以工作,但在运行时会生成403 Forbidden错误。同样奇怪的是,所有其他REST API调用在设计时和运行时都可以正常工作,并且所有参数都与无效的参数(标头等)相同,并且我已经对所有内容进行了剪切和粘贴,但是与版本有关的所有内容仍然无法正常工作,尽管那可能只是一个红鲱鱼?
该应用程序可以成功删除文件并将其覆盖,签入和签出等,因此似乎没有权限问题。我还尝试过在读取版本信息之前签出文件,以防万一(因为在此站点上无法执行任何操作之前强制签出),但这也不起作用。
这是引起错误的调用之一的示例:
https://mycompany.SharePoint.com/sites/ {SiteName} / _ api / web / GetFileByServerRelativeUrl('/ sites / {SiteName} / Shared%20Documents / {FilenameAndPath}')/ version
答案 0 :(得分:0)
看看这个post:
https://sharepoint/_api/web/folders/getbyurl('Documents')/files/getbyurl('myfile.docx')/versions?$filter=VersionLabel eq '2.0'
答案 1 :(得分:0)
在 OnBeforeRequest REST API回调中检查 Accept 和 Content-Type 标头。
我发现,在测试IDE时,两者都会发送"application/json"
实例,但是在运行时,平台会将";utf-8"
添加到这些标头的值中。然后,通常会在没有正确的错误说明/声明的情况下拒绝请求。