带有/v1.0而不是/ beta的InvalidAuthenticationToken

时间:2019-04-16 12:25:42

标签: microsoft-graph

我正在尝试从Microsoft Graph阅读电子邮件,但在调用/v1.0/me/messages时收到以下错误:

{
    "error": {
        "code": "InvalidAuthenticationToken",
        "message": "Access token has expired.",
        "innerError": {
            "request-id": "06e1edb9-cb8d-4371-807e-2795e60b15a2",
            "date": "2019-04-16T12:16:54"
        }
    }
}

但是,当我使用/beta/me/messages端点时,我没有得到任何错误,只有预期的响应。

我对两个请求都使用相同的访问令牌。

范围是:

"scp": "Calendars.Read Calendars.Read.Shared email Files.Read 
        Files.Read.All Files.ReadWrite Files.ReadWrite.All Mail.Read
        Mail.Read.Shared Mail.ReadBasic Mail.ReadWrite 
        Mail.ReadWrite.Shared openid profile User.Read User.ReadBasic.All"

有人知道您可以使用beta端点但不能使用v1.0端点吗?

1 个答案:

答案 0 :(得分:1)

当前Mail.ReadBasic仅适用于/ beta。它将引发该错误。如果您删除了该权限,那么无论如何如果您有Mail.Read范围,则不需要此权限,该错误将消失。

我们正在研究更好的方法来引入诸如* basic之类的细粒度范围,而不会引起这种体验。