我正在尝试从Azure AD获取用户基本配置文件。我有一个React Native应用程序根据 Native Azure AD 应用程序注册进行身份验证。我从该请求中获得的access_token
用于针对 Web应用程序/ Api 进行身份验证。系统会显示用户正确的同意屏幕,以及我在Azure AD中设置的权限。
(添加了Graph API和AAD,因为我不知道要使用哪一个)
当我尝试通过https://graph.microsoft.com/v1.0/users/me获取用户个人资料时,从上一个请求中获得了access_token
,我得到:
{
"error": {
"code": "InvalidAuthenticationToken",
"message": "Access token validation failure.",
"innerError": {
"request-id": "00cdb708-bcf8-4b33-af21-14a046b16533",
"date": "2018-09-02T18:28:59"
}
}
}
我的初始身份验证请求中的resource
是 Web应用程序/ API的应用程序ID,我不认为选择2种资源(?)。
我在做什么错,应该怎么解决?谢谢。
答案 0 :(得分:0)
根据您的描述,我假设您想获取用户个人资料,但得到的错误显示无效的令牌。
根据我的测试,您发布的请求URL不正确。
应为“ https://graph.microsoft.com/v1.0/me”或“ https://graph.microsoft.com/v1.0/users/ {id | userPrincipalName}”。
我们可以按照以下方法解决您的问题。
首先,检查请求是否具有正确的“授权”字段。 This document显示我们需要请求标头中的“授权”字段。
第二,如果您在请求标头中添加了“授权”字段,能否提供主要代码,以便我们确定问题是否出在那?
答案 1 :(得分:0)
在获取访问令牌时,请添加“ 资源”:“ https://graph.microsoft.com/”,并在带有 Bearer 的标头中使用该访问令牌,而不要点击URL- > https://graph.microsoft.com/me?api-version=1.6
在获取访问令牌时不要忘记添加资源
稍后谢谢:P