我有一个问题。
在sharepoint 2013上,有一种方法可以修改列表,例如使用REST调用。
所以get调用是可以的(只读) 对site / _api / contextinfo的post调用是可以的,我检索令牌
但是当我使用X-RequestDigest和NTLM身份验证调用另一个帖子(PUT)时出现此错误:
{“error”:{“code”:“ - 2130575251,System.Runtime.InteropServices.COMException”,“message”:{“lang”:“en-US”,“value”:“安全验证此页面无效。在网络浏览器中点击返回,刷新页面,然后重新尝试操作。“}}}
一个想法?
答案 0 :(得分:0)
检查此答案:https://stackoverflow.com/a/32824960/5243272 您必须将请求摘要表单添加到您的正文标记。
<form runat="server">
<SharePoint:FormDigest ID="FormDigest1" runat="server"> </SharePoint:FormDigest>
</form>
答案 1 :(得分:0)
我不清楚您是否尝试访问SharePoint Online,我假设您尝试访问SharePoint联机原因,您说您生成了BinarySecurityToken。
基本上,您需要在RESTfull调用中将三个值作为标头传递。
为了获得rtFa&amp; FedAuth需要将BinarySecurityToken传递到您的SPO站点,SPO单点登录过程将在验证您的令牌后生成这些身份验证Cookie。
此链接将指导您生成上述值, https://denuwanhimangahettiarachchi.blogspot.com/2017/03/generate-sharepoint-online-rest-api.html