Microsoft Graph API:尝试获取 Outlook 邮箱的邮件,但却收到 "ResourceNotFound"
Microsoft Graph API: Trying to GET messages of an Outlook mailbox but getting "ResourceNotFound" instead
我正在尝试获取 outlook.com 用户邮箱的信息,然后是每封邮件的详细信息,但我在使用生成的令牌时遇到了问题。当我尝试获取消息列表时,它给了我一个 ResourceNotFound 代码。这些是我为生成令牌而采取的步骤。
1.- 微软 Azure
我在 Azure Active Directory 中注册了一个新应用程序。我已经添加了我想要从中获取信息的用户作为访客用户,生成了一个客户端机密,将此 URI (https:///localhost/myapp/) 添加为重定向 URI 并激活了 Mail.Read 权限(委托和申请)等等。
Azure Permissions
2.- 令牌生成
使用上一步创建的应用程序中的 ID,我继续在浏览器中使用此 URL 生成代码并登录到 Outlook 帐户:https://login.microsoftonline.com/{TenantId}/oauth2/v2.0/authorize?client_id={ClientId}&response_type=code&redirect_uri=https%3A%2F%2Flocalhost%2Fmyapp%2F&scope=offline_access%20mail.read&response_mode=query&state=12345
获得代码后,我通过 Postman 向 https://login.microsoftonline.com/{TenantId}/oauth2/v2.0/token 发出了 POST 请求,其中包含根据文档包含所需参数的表单数据主体,其中之一是代码问题。
这样我就能够成功生成访问令牌和刷新令牌。现在,当我将此令牌用于对端点 https://graph.microsoft.com/v1.0/me/ 的 GET 请求时,我可以检索帐户的数据。
/me/ Info GET
但是当我将它用于对端点 https://graph.microsoft.com/v1.0/me/messages 的请求时,我收到错误代码 ResourceNotFound.
Error Code
有什么我想念的吗?我正在关注此 link 中提供的文档:https://docs.microsoft.com/en-us/graph/auth-v2-user。在此先感谢所有可以提供帮助的人。
Jason Johnston 的评论给出了答案。通过将 {TenantId} 替换为 'common',我能够生成正确的令牌来获取我需要的信息。谢谢!
我正在尝试获取 outlook.com 用户邮箱的信息,然后是每封邮件的详细信息,但我在使用生成的令牌时遇到了问题。当我尝试获取消息列表时,它给了我一个 ResourceNotFound 代码。这些是我为生成令牌而采取的步骤。
1.- 微软 Azure
我在 Azure Active Directory 中注册了一个新应用程序。我已经添加了我想要从中获取信息的用户作为访客用户,生成了一个客户端机密,将此 URI (https:///localhost/myapp/) 添加为重定向 URI 并激活了 Mail.Read 权限(委托和申请)等等。
Azure Permissions
2.- 令牌生成
使用上一步创建的应用程序中的 ID,我继续在浏览器中使用此 URL 生成代码并登录到 Outlook 帐户:https://login.microsoftonline.com/{TenantId}/oauth2/v2.0/authorize?client_id={ClientId}&response_type=code&redirect_uri=https%3A%2F%2Flocalhost%2Fmyapp%2F&scope=offline_access%20mail.read&response_mode=query&state=12345
获得代码后,我通过 Postman 向 https://login.microsoftonline.com/{TenantId}/oauth2/v2.0/token 发出了 POST 请求,其中包含根据文档包含所需参数的表单数据主体,其中之一是代码问题。
这样我就能够成功生成访问令牌和刷新令牌。现在,当我将此令牌用于对端点 https://graph.microsoft.com/v1.0/me/ 的 GET 请求时,我可以检索帐户的数据。
/me/ Info GET
但是当我将它用于对端点 https://graph.microsoft.com/v1.0/me/messages 的请求时,我收到错误代码 ResourceNotFound.
Error Code
有什么我想念的吗?我正在关注此 link 中提供的文档:https://docs.microsoft.com/en-us/graph/auth-v2-user。在此先感谢所有可以提供帮助的人。
Jason Johnston 的评论给出了答案。通过将 {TenantId} 替换为 'common',我能够生成正确的令牌来获取我需要的信息。谢谢!