【问题标题】:Microsoft Graph API - ThrottlingMicrosoft Graph API - 限制
【发布时间】:2017-12-05 13:31:08
【问题描述】:

在请求开始受到限制之前,应用程序是否可以向 Microsoft Graph API 发出特定数量的请求/分钟(特定于租户)?

【问题讨论】:

    标签: microsoft-graph-api


    【解决方案1】:

    不,不是特定于租户(至少不是图表中与 Outlook 相关的部分)。每个应用程序的每个用户都会进行节流。阈值为每 10 分钟 10000 个请求。

    https://blogs.msdn.microsoft.com/exchangedev/2017/04/07/throttling-coming-to-outlook-api-and-microsoft-graph/

    对于非 Outlook 的东西,我不确定限制是什么。 Graph 要说的都在这里:

    https://developer.microsoft.com/en-us/graph/docs/concepts/throttling

    这里的要点是您不应该依赖特定的阈值,因为我们可以随时更改它,以保护服务的完整性。通过正确处理 429 错误响应,确保您的应用可以优雅地处理被限制。

    【讨论】:

    • 只是在 Jason 的回答中添加一点,“每次使用,每个应用程序”意味着每个经过身份验证的用户可以从给定的应用程序 ID 向 Outlook API 发出 10k 次请求。因此 10 个用户可以每个在 10 分钟的窗口内发出 10k 个请求。 但是,如果您使用的是 Client Credentials,则您没有 user,这意味着您在 10m 的窗口内收到 flat 10k 个请求。认为这个主题将受益于说明正在发生的事情的流程图。 :)
    • 限制阈值是否会随用户被限制的次数而变化。例如,如果我被限制了一次,当我在规定时间后发出第二次请求时,我的阈值会增加/减少吗?
    • @MarcLaFleur,我注意到在使用客户端凭据时,我可以为每位用户每分钟发出 10k 个请求。
    • @VipinChacko - 不,阈值不是基于您过去的限制历史记录。我正在仔细检查 Marc 关于客户端凭据的说明。
    • 客户端凭据是 AAD 支持的 OAuth 授权流之一。它不需要用户并利用应用程序范围。它的对应物是授权代码,它确实需要一个用户并利用委托范围。至于限制,它取决于端点。每个底层服务都定义了自己的限制机制。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多