【发布时间】:2020-07-24 18:55:03
【问题描述】:
我正在尝试使用“GET https://graph.microsoft.com/v1.0/me/contacts”列出我的联系人,并且总是有 401(未经授权)。
我在 apps.dev.microsoft.com 上的应用程序拥有权限:
- Contacts.ReadWrite(委托权限和应用程序权限)
我的客户端应用程序具有身份验证范围:https://graph.microsoft.com/Contacts.ReadWrite
“我”或“用户”等其他 API 工作正常。
我尝试使用 Microsoft Graph Explorer (https://developer.microsoft.com/en-us/graph/graph-explorer) 列出我的联系人并启用相关范围,但它从来没有为我工作过。任何有关如何解决它的提示表示赞赏。
提前谢谢你。
【问题讨论】:
-
复制您的访问令牌并在jwt.io 解析它。检查
scp声明,看看它是否真的包含范围。 -
感谢您的回复。 ...“oid”:“.....”,“platf”:“....”,“puid”:“....”,“scp”:“Contacts.ReadWrite Directory.ReadWrite.All People.Read.All User.Read.All User.ReadBasic.All User.ReadWrite", "signin_state": [ "kmsi" ],
-
@JasonJohnston 以防万一,我只尝试了一个范围 Contacts.ReadWrite 范围,但它不起作用......“scp”:“Contacts.ReadWrite”,
-
我错过了你说它在 Graph Explorer 中也不起作用。在这种情况下,您是否在错误响应中收到任何文本?也是401吗?
-
@JasonJohnston 我正在尝试使用我自己在 Azure 上的活动目录中的测试帐户在 Graph Explorer 中调用 graph.microsoft.com/v1.0/me/contacts。范围“Contacts.ReadWrite”已启用。我收到“失败 - 状态代码 401”。响应:“代码”:“未知错误”...