对于我的一个仪表板,出于明显的个性化原因,我想向用户显示其个人资料图片,并为他们提供更改的可能性。
Microsoft Docs网站上的大多数博客文章和文章都使用了各种端点来获取这些数据,但是我只是无法通过简单的邮递员电话就可以使用这些端点。由于我什至无法获取照片,所以我也不知道如何更改(更新)它。
以下端点不起作用:
GET https://graph.microsoft.com/beta/users/{id}/photo/$value
GET https://graph.microsoft.com/beta/users/{id}/photo
GET https://graph.windows.net/myorganization/users/{id}/photo?api-version=1.6
GET https://graph.windows.net/myorganization/users/{id}/photo/$value?api-version=1.6
所有这些要么导致“资源'照片'不存在,要么导致json响应中出现'内部服务器错误'。
注意:我可以查询图API来获取其他资源。
答案 0 :(得分:0)
如果在最新的Graph API中。确保在应用程序项目配置中为 GraphScope 设置了正确的permission:
对于用户资源: User.Read.All,User.ReadWrite.All
对于组资源: Group.Read.All,Group.ReadWrite.All
有关联系人资源: Contacts.Read,Contacts.ReadWrite
update photo的一些提示:
1.0版中的更新操作仅支持用户的工作或学校 邮箱而不是个人邮箱。
因为您操作的是Azure B2C租户用户,所以必须使用Azure AD Graph API(api 1.6)但要使用最新的Graph API。在Azure Graph API中,没有照片属性,但是我们可以get / set缩略图。
答案 1 :(得分:0)
对于任何遇到B2C问题的人,请尝试使用“ thumbnailPhoto”端点。这对我有用(特别是GET方法)。
https://graph.windows.net/[tenant]/users/[objectid]/thumbnailPhoto?api-version=1.6