【问题标题】:Google Calendar API error : usage limits exceededGoogle Calendar API 错误:超出使用限制
【发布时间】:2017-09-21 11:54:00
【问题描述】:

我正在使用谷歌日历 API。

我收到错误消息:

超出日历使用限制

细节错误:

{
    "code":    403,
    "errors":  [{
        "domain":  "usageLimits",
        "message": "Calendar usage limits exceeded.",
        "reason":  "quotaExceeded"
    }],
    "message": "Calendar usage limits exceeded."
}

这种情况随时发生,有时只插入 5 个事件,有时甚至超过 25 个,甚至我也使用批处理请求来插入事件。有什么方法可以专门用于测试日历 API 吗?

【问题讨论】:

标签: google-api google-calendar-api


【解决方案1】:

最初的问题是“有没有专门用于测试日历 API 的方法?”。这确实是核心问题。关于导致此错误发生的原因缺乏透明度。我已阅读https://support.google.com/a/answer/2905486?hl=en,但这些都不适用于我的应用程序。如果我知道真正导致此错误的原因,我也许可以避免它。

我以前有一个 Google 日历模拟器来进行很多测试,但它变得太费力并且绕过了测试,因此最近转换为使用由免费 gmail 帐户组成的测试帐户来定位测试数据的插入,然后将其读出。我不必非常努力或做很多插入来导致这个错误。我从 6 秒开始实施指数退避;它允许在初始失败后 25 分钟插入。那是因为插入单个事件比上一次插入到同一帐户晚大约两分钟时发生的故障。失败的插入是在近 20 分钟内将相同数据第 9 次插入到同一日历中,这是 30 分钟内的第 10 次。在测试环境中这些数字并不大。

这是测试的严重障碍。我认为解决此问题的唯一方法是获取一个 gmail 帐户池,并在我用完一个时从池中提取一个新帐户。这不仅对我来说需要更多的工作和维护,而且对谷歌也很不利,因为一堆账户没有映射到真实用户。

如果有人有更好的主意,我会全力以赴。我更喜欢的是一种选择测试特定谷歌账户的方式,这意味着用户明确要求谷歌不要担心滥用(假设这是这个错误的理由)。

【讨论】:

    【解决方案2】:

    我认为您同时进行了太多 API 调用。给它一个时间间隔或使用Batching of Requests。也可以使用Exponential Backoff 处理 4xx 错误重试。

    补充说明:

    根据日历使用限制,以下可能会导致您的问题:

    分辨率

    如果用户达到了 Google 日历的限制,他们应该能够在几个小时内再次正常编辑他们的日历。在此期间,用户仍然可以在日历中查看活动。

    更多信息 如果用户看到其中一条消息,可能是由于以下原因之一:

    1.创建太多事件

    如果用户在短时间内在其日历中创建了超过 10,000 个事件,则该用户可能会失去日历编辑权限。

    2。创建太多日历

    如果用户在短时间内创建超过 25 个新日历,则该用户的日历可能会进入只读模式。

    3.向外部客人发送过多邀请或电子邮件

    为了防止垃圾邮件,Google 日历限制了用户可以发送给外部客人的邀请数量。此限制因操作而异,通常在 100-300 位客人之间。

    G Suite 用户可以从其主域或与其主域关联的辅助域向任意数量的客人发送邀请。

    4.与太多用户共享日历

    如果用户在短时间内与许多其他用户共享一个或多个日历,Google 日历可能会切换到该用户的只读模式。手动更新共享设置几乎不可能达到此限制,但某些基于 API 的工具或第三方应用程序可能会发生这种情况。

    【讨论】:

    • 亲,请问如何解决这个问题,如何通过更多的quora,谢谢
    猜你喜欢
    • 2019-03-27
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-08-20
    • 2016-09-29
    • 1970-01-01
    相关资源
    最近更新 更多