我想在c#中使用REST API在线检索所有SharePoint列表。 为此,我使用下面的代码
HttpWebRequest endpointRequest = (HttpWebRequest)HttpWebRequest.Create("https://o365.sharepoint.com/sites/test-site/_api/web/lists");
endpointRequest.Method = "GET";
endpointRequest.Accept = "application/json;odata=verbose";
endpointRequest.ContentLength = 0;
但我收到的错误
403:禁止访问被拒绝。在此位置打开文件之前。您必须先浏览网站并选择自动登录的选项。
所以我搜索了这个,发现我们必须通过AuthenticationToken,这是用这个链接写的
https://msdn.microsoft.com/en-us/library/jj164022.aspx
endpointRequest.Headers.Add("Authorization", "Bearer " + accessToken);
但是如何获得accessstoken?
答案 0 :(得分:0)
[...]它还假设您拥有存储在 accessToken 变量中的有效OAuth访问令牌。如果您从加载项Web中进行此调用,则不需要访问令牌,就像在SharePoint托管的加载项中一样。请注意,您无法从浏览器客户端上运行的代码获取访问令牌。您必须从服务器上运行的代码中获取访问令牌。 Context Token OAuth flow for SharePoint Add-ins和Authentication Code OAuth flow for SharePoint Add-ins解释了如何获取访问令牌。