【问题标题】:Postman to fetch Office365 unread emails邮递员获取 Office365 未读邮件
【发布时间】:2018-10-10 13:42:19
【问题描述】:

我正在尝试使用邮递员从我的 office365 帐户的收件箱中获取未读电子邮件。

在 Microsoft Graph API 参考的帮助下,我能够生成如下格式的访问令牌:

POST https://login.microsoftonline.com/{{AAA_UID}}/oauth2/token

{
    "token_type": "Bearer",
    "expires_in": "3600",
    "ext_expires_in": "0",
    "expires_on": "1539180610",
    "not_before": "1539176710",
    "resource": "https://graph.microsoft.com",
    "access_token": <ENCRYPTED_TOKEN>
}

但是我的要求是从收件箱中获取未读邮件。在 Graph Explorer 中,我可以使用以下 url 获得输出,但在邮递员中使用时,出现 "Invalid authentication, access token is empty" 错误。

GET https://graph.microsoft.com/v1.0/me/mailFolders('Inbox')/messages?$select=sender,subject

谁能告诉我如何在上面的代码中附加访问令牌。

或者如果您知道从office365帐户中获取未读电子邮件的任何简单且更好的程序,请提供建议。

【问题讨论】:

    标签: outlook microsoft-graph-api


    【解决方案1】:

    访问令牌在请求标头中发送到 Microsoft Graph。在您对graph.microsoft.com/v1.0/me/mailFolders('Inbox')/messages 的GET 请求中,包含Authorization 请求标头,并且值应为Bearer YOUR_TOKEN

    请参阅Get access on behalf of a user 文档。第 4 步展示了如何使用访问令牌调用 Microsoft Graph。

    它在 Graph Explorer 中工作的原因是它们在您登录后为您包含令牌。如果您使用 Fiddler 或 F12 开发工具,您可以看到发送到 Graph 的令牌。

    【讨论】:

      【解决方案2】:

      access_token 通常在请求标头中传递。您可以使用上面的代码附加访问令牌:

      您需要在请求头中添加Authorization : Bearer eyJ0eXAiO ... 0X2tnSQLEANnSPHY0gKcgw

      Bearer 是实施 OAuth 2 的网站经常使用的关键字。

      更多信息,你可以参考这个链接:

      Get access on behalf of a user

      【讨论】:

      • 我不确定您为什么添加了一个单独的答案,重复了 Dan Silver 提供的内容。如果 Dan 的回答是正确的(绝对正确),则应将其标记为已接受。
      猜你喜欢
      • 2015-02-08
      • 2017-06-02
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-03-04
      • 2019-02-21
      • 2023-03-07
      • 1970-01-01
      相关资源
      最近更新 更多