【问题标题】:Gmail API Global Per Second Rate LimitGmail API 全球每秒速率限制
【发布时间】:2019-06-26 22:41:29
【问题描述】:

我需要能够正确捕获和处理从 Gmail API 返回的全局速率限制错误。如何区分每个用户的速率限制错误和全局速率限制错误?

我找不到任何明确的文档,但我假设响应负载中的domain 属性将显示global 而不是usageLimits。谁能验证这是否正确?

我假设全局速率限制错误的示例如下

{
 "error": {
  "errors": [
   {
    "domain": "global",
    "message": "Rate Limit Exceeded",
    "reason": "rateLimitExceeded",
   }
  ],
  "code": 403,
  "message": "Rate Limit Exceeded"
 }
}

【问题讨论】:

    标签: gmail-api


    【解决方案1】:

    您可以通过强制用户和域的配额限制率错误来检查这一点。如果您是管理员,您可以在 Google Cloud 平台控制台 (console.cloud.google.com) 中为每个项目和每个 API 编辑总配额率限制和每个用户。阅读有关如何编辑配额限制的说明 [1]。

    您可以在此处查看每个 Gmail API 方法使用的“配额单位” [2]。

    关于错误消息,我按照前面的解释强制了这两个限制并得到了这个:

    对于用户:

    "errors": [
    
        "domain": "usageLimits",
        "reason": "userRateLimitExceeded",
        "message": "User Rate Limit Exceeded. Rate of requests for user exceed configured project quota. You may consider re-evaluating expected per-user traffic to the API and adjust project quota limits accordingly. You may monitor aggregate quota usage and adjust limits in the API Console: XXXXX",
        "extendedHelp": "XXXXX"
      ]
    

    我放 XXXXX 的地方有一个 url 来修改那个项目的配额限制。

    对于域(总数):

      "errors": [
    
        "domain": "usageLimits",
        "reason": "rateLimitExceeded",
        "message": "Rate Limit Exceeded"
       ]
    

    [1]https://cloud.google.com/apis/docs/capping-api-usage

    [2]https://developers.google.com/gmail/api/v1/reference/quota

    【讨论】:

      猜你喜欢
      • 2018-11-11
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2014-09-18
      • 1970-01-01
      • 2014-11-12
      • 2020-11-04
      相关资源
      最近更新 更多