我正在尝试构建一个具有outlook office 365登录功能的小型Web应用程序。
所以我能够使用以下API获取登录用户的图像:
GET https://outlook.office.com/api/v2.0/me/photo
GET https://outlook.office.com/api/v2.0/Users('{user_id}')/photo
当我通过其他用户的user_id
时,我收到以下错误。
{
"error": {
"code": "ErrorAccessDenied",
"message": "Access is denied. Check credentials and try again."
}
}
但是当我在Azure Sandbox做同样的事情时,一切都进展顺利。我能够获得所有用户的图像。
我在这里做错了吗?
任何帮助,将不胜感激。
有几点需要注意:
GET https://graph.microsoft.com/v1.0/me/photo/$value
GET https://graph.microsoft.com/v1.0/users/{userPrincipalName}/photo/$value
至于您在此处收到的具体错误,您需要将User.ReadBasic.All
permission scope添加到您的授权请求中。我怀疑你现在只是要求User.Read
。这只允许您访问当前用户的信息。您需要其他权限才能访问租户中的其他用户。