我尝试在使用EWS连接到Office 365的电子邮件应用上下文中访问已登录用户的个人资料照片。
该应用已在portal.azure.com上注册,具有以下必需权限:
EWS部分工作正常,我能够签署用户,获取访问权限和刷新令牌,并使用"授权:Bearer access_token"执行EWS操作。
我遇到问题的部分是获取用户的个人资料照片。
这是我要去的文档:
https://msdn.microsoft.com/en-us/office/office365/api/photo-rest-operations
我尝试使用的API端点是:
获取https://outlook.office.com/api/v2.0/me/photo
... with"授权:Bearer access_token"报头中。
上述API会返回此响应:
HTTP 403 {"错误":{"代码":" ErrorAccessDenied","消息":"访问被拒绝。 检查凭据,然后重试。"}}
可能出现什么问题?
答案 0 :(得分:0)
这是因为您尝试使用v2端点Rest API,但您没有使用v2端点注册应用程序。
User Photo API仅适用于Azure AD v2身份验证终结点,非Azure AD和Oauth:
您需要转到Microsoft Application Registration Portal注册您的申请。有关详细信息,请参阅this document。
答案 1 :(得分:0)
仅供记录:
由于我们无法使用OAUTH2 API -
我们最终使用GetUserPhoto命令和用户(帐户)自己的电子邮件地址。
工作正常。