【问题标题】:Microsoft Graph API - MailboxNotEnabledForRESTAPI 404 error on beta/users/{id}/photoMicrosoft Graph API - beta/users/{id}/photo 上的 MailboxNotEnabledForRESTAPI 404 错误
【发布时间】:2020-06-27 19:40:11
【问题描述】:

我正在尝试使用 Microsoft Graph API 的 beta 端点 beta/users/{id}/photo 获取用户个人资料照片 但我收到 404 MailboxNotEnabledForRESTAPI 错误

  error: {
    code: 'MailboxNotEnabledForRESTAPI',
    message: 'REST API is not yet supported for this mailbox.'
    ...

该错误没有意义,因为我正在尝试访问与邮箱无关的 Azure Ad 个人资料图片。

有人知道我是否遗漏了什么吗?

【问题讨论】:

    标签: microsoft-graph-api


    【解决方案1】:

    您使用的endpoint 说明了以下关于获取用户图片的信息:

    注意:尝试获取用户照片时,此操作首先尝试从 Microsoft 365 中检索指定的照片。如果该照片在 Microsoft 365 中不可用,API 会尝试检索该照片来自 Azure Active Directory。

    过去,用户个人资料图片存储在 Exchange 服务器中,显然他们现在也将图片保存在其他地方。

    为了检查您的问题,我向没有任何许可证的用户添加了一张图片。并开始尝试Graph Explorer中的请求

    1. v1.0/users/upn_here/photo 的请求❌失败,ResourceNotFound -> Resource could not be discovered.
    2. 请求beta/users/upn_here/photo ✔ 向我提供有关图像的信息(例如大小)
    3. v1.0/users/upn_here/photo/$value 的请求❌失败,ResourceNotFound -> Resource could not be discovered.
    4. 请求beta/users/upn_here/photo/$value ✔ 给我图像。 (我看到了我之前上传的图片)。

    您应该检查使用的访问令牌,复制令牌并将其粘贴到此处https://jwt.ms(Microsoft 拥有的页面以显示令牌中的数据)。

    根据docs,您至少需要委派的User.Read 范围或应用范围User.Read.All

    【讨论】:

    • @vma 是云用户还是本地用户?我猜上述方法不适用于本地用户。
    • @user3466681 你能确认这解决了问题吗?或者你有更多的细节给我们,它是什么类型的用户(本地/Azure AD)?
    猜你喜欢
    • 2022-07-25
    • 1970-01-01
    • 2023-03-14
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-08-11
    相关资源
    最近更新 更多