Rav*_*ngh 2 azure azure-active-directory microsoft-graph-api
我们正在将 Microsoft Azure AD 与我们的应用程序集成。我正在尝试使用 Microsoft Graph API ( https://graph.microsoft.com/v1.0/users/ {id | userPrincipalName}/photo/$value)获取用户个人资料图片。但它对我不起作用。我已在应用程序中授予此 API 所需的所有权限,但每次都低于响应。你能告诉我我错过了什么配置吗?
回复:
{
"error": {
"code": "ResourceNotFound",
"message": "Resource could not be discovered.",
"innerError": {
"request-id": "dc27c602-5734-4dec-9b2a-8b42d5577073",
"date": "2019-07-02T10:33:42"
}
}
}
Run Code Online (Sandbox Code Playgroud)
谢谢
只有当用户拥有邮箱时,才能读取和更新用户的个人资料照片。此外,之前可能已使用thumbnailPhoto 属性(使用Office 365 统一API 预览或Azure AD Graph,或通过AD Connect 同步)存储的任何照片都不再可通过用户资源的Microsoft Graph photo 属性进行访问。有关更多详细信息,您可以在此处查看官方文档
Microsoft Graph v1.0 从 Exchange Online 而非 Azure Active Directory 检索用户的 profilePhoto。因此,没有在 Exchange Online 中设置邮箱的用户将没有可用的 profilePhoto
您的案例:
您可以尝试使用Microsoft Graph REST API Beta流动格式的版本请求 URL:
https://graph.microsoft.com/beta/users/UserIdOrPrincipalName/photo/$value
Run Code Online (Sandbox Code Playgroud)
请参阅下面的屏幕截图:
Azure Active Directory 个人资料图片:
邮递员请求示例:
请求网址:
https://graph.microsoft.com/beta/users/UserIdOrPrincipalName/photo/$value
Run Code Online (Sandbox Code Playgroud)
要记住的要点:
确保您已在 azure 门户配置文件中上传用户照片。
笔记:
Microsoft Graph 中 /beta 版本下的 API 可能会发生变化。不支持在生产应用程序中使用这些 API