如何在sharepoint 2013中获取oauth访问令牌?

我在这里有这个网站: http : //msdn.microsoft.com/en-us/library/jj164022(v = office.15).aspx

某些部分的文本说:以下JavaScript代码演示了如何使用JQuery生成此GET请求,该请求返回所有站点列表的JSON表示。 它还假定您具有存储在accessToken变量中的有效OAuth访问令牌。 如果您从应用程序Web中进行此调用,则不需要访问令牌,就像在SharePoint托管的应用程序中一样。

jQuery.ajax({ url: http:// site url/_api/web/lists, type: "GET", headers: { "ACCEPT","application/json;odata=verbose", "Authorization", "Bearer " + accessToken }, }) 

具体问题是如何获取访问令牌?

你的整个方法都不正确。 在使用javascript访问sharepoint 2013服务器的REST服务时,您不需要访问令牌。 您必须使用Sharepoint 2013跨域库。

http://msdn.microsoft.com/en-us/library/jj164022.aspx上的页面在使用oauth令牌显示经典REST请求后进行了解释:

如果您使用JavaScript编写应用程序但使用SharePoint 2013跨域库,则此请求看起来会略有不同。 在这种情况下,您无需提供访问令牌。 以下代码演示了如果您使用跨域库并希望将列表的OData表示forms接收为XML而不是JSON,此请求将如何显示。 有关使用跨域库的详细信息,请参阅如何:使用跨域库从远程应用程序访问SharePoint 2013数据。

这是该文章的urlhttp://msdn.microsoft.com/en-us/library/fp179927.aspx

这应该是你的正确答案

似乎没有办法仅使用JavaScript获取访问令牌。 您需要使用应用程序生成访问令牌。 有关如何获取令牌的详细信息,请参阅Sharepoint OAuth提示和常见问题解答 。