我正在尝试从网页浏览中脱机访问Outlook日历。 (使用authorization_code oauth流程) 目前我正在做以下
javascript网站称之为 https://login.microsoftonline.com/common/oauth2/v2.0/authorize 端点。然后我将重定向URI设置为我的spring端点。
spring服务正在获得一个有效的代码/状态,所以我认为到目前为止我做的一切都是正确的。
然后我用以下参数调用/ token端点
{
grant_type: authorization_code,
client_id: <client_id>,
client_secret: client_secret,
redirect_uri: <THE SAME AS USED BY AUTHENTICATE>,
scope: https://graph.microsoft.com/mail.read
}
我收到以下错误:
{
"error" : "invalid_client",
"error_description" : "The OAuth client was not found."
}
我确保两次客户端密码/ ID设置正确。我使用微软注册门户创建我的应用程序,并使用Web作为平台。还启用了Live SDK支持。
https://apps.dev.microsoft.com
有没有人建议为什么这不起作用?
答案 0 :(得分:0)
您需要将第二次通话中第一次通话时收到的授权码传回。以下是您需要传回的参数:
另请注意,POST应编码为application/x-www-form-urlencoded
而不是application/json
。
我写了一篇你可能会觉得有用的primer on the v2 Endpoint。