邮递员获取Office365未读电子邮件

时间:2018-10-10 13:42:20

标签: outlook microsoft-graph

我正尝试使用邮递员从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帐户获取未读电子邮件的任何简单且更好的过程,请提出建议。

2 个答案:

答案 0 :(得分:3)

访问令牌在请求标头中发送到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的令牌。

答案 1 :(得分:0)

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

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

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

有关更多信息,您可以参考以下链接:

Get access on behalf of a user