我已按照此链接https://msdn.microsoft.com/en-us/office/office365/howto/building-service-apps-in-office-365将守护程序或服务器应用程序设置为 Web API 身份验证方法在 Office365 中获取访问令牌。
示例访问令牌请求如下所示
POST https://login.microsoftonline.com/{tenant-id}/oauth2/token
grant_type : client_credentials
client_id : {clientId}
client_secret : {clientSecret}
resource : https://{tenant}.sharepoint.com
例如:
https://login.microsoftonline.com/cae788bd-7a55-4fb5-9d1f-3aa5365e14a/oauth2/token
grant_type : client_credentials
client_id : 1dd0a211-06f1-4f6a-a232-b3a8dcab829b
client_secret : ZWtkWm9M5Ucx5j29UoXPy7GKG+Hu0eNdVFYO+lH761w=
resource : https://{tenant}.sharepoint.com
从上面的 api 请求中,我得到了一个访问令牌,当我尝试从上面的访问令牌创建文件夹或访问任何其他 api 时,它显示错误为“不支持的应用程序唯一令牌”。我试图调用这个网络服务来得到这个错误:
PUT https://{tenant}.sharepoint.com/_api/v1.0/Files/{parent-id}/children/{folder-name}
Authorization : BearerBearer eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiIsIng1dCI6Ik1uQ19WWmNBVGZNNXBPWWlKSE
Content-Type : application/json
Accept : application/json
但之前我们在 Office365 中使用相同的守护程序或服务器应用程序到 Web API 身份验证方法来获取访问令牌,并且工作正常。
我们已经使用 accesstoken 访问了 office 365 API,但现在它显示错误为“Unsupported app only token”。