如何从 Microsoft Graph API 获取访问令牌?

How do I get an access token from Microsoft Graph API?

我目前正在处理令人着迷的 Microsoft 世界。我已经阅读了一些关于如何使用他们的 Graph API 和 Office 365 API 的半生不熟的教程,但我仍然不知道该怎么做。我已经弄清楚的是如何构建授权请求 URL 以便我可以获得 "code",它应该用于获取访问令牌。我已经使用 Google API 完成了此操作并且效果很好,但不适用于 Microsoft Graph API。这是我拥有的:

https://login.microsoftonline.com/common/oauth2/authorize?client_id=123451234512345&response_type=code&redirect_uri=https://www.my-site.com/oauth-callback/microsoft

当用户单击此 link 时,他们将被带到 Microsoft 登录页面。到目前为止,一切都很好。但是,在输入我的登录凭据后,它只是将我带回到同一个 Microsoft 登录页面,而不是将用户重定向到我的重定向 uri。我有一个指定了相同重定向 URI 的 Azure 帐户,但它无法正常工作。我究竟做错了什么?顺便说一下,我正在使用 node.js。任何 link 有用的教程都将不胜感激。

要获取代码,您需要传递以下参数:

例如: https://login.microsoftonline.com/common/oauth2/authorize?response_type=code&client_id=12334&redirect_uri=https://myapp.com&resource=https://graph.microsoft.com

最后,感谢您的反馈,能否请您指出您阅读的文章中信息不明确的地方,以便我们确保更新它们?我建议您尝试阅读以下文章:https://graph.microsoft.io/docs/platform/rest

这是一个解释登录过程的精彩视频:https://www.youtube.com/watch?v=HOcwvuIJHXA "Deep Dive into the Office 365 RESTful APIs"。它很长,但是很详细。在 25:00 左右,它显示了 Fiddler 的登录方式。对我帮助很大。