Google API刷新令牌限制

use*_*031 16 oauth google-calendar-api google-api google-oauth google-oauth2

我正在开发一个应用程序,我需要访问多个谷歌日历.所有这些日历都来自不同的用户.现在我正在使用OAuth2进行同步.但据我了解,我每个客户端ID只能生成25个刷新令牌.

Note: Save refresh tokens in secure long-term storage and continue to use 
them as long as they remain valid. Limits apply to the number of refresh 
tokens that are issued per client-user combination, and per user across all clients, 
and these limits are different. If your application requests enough refresh tokens 
to go over one of the limits, older refresh tokens stop working.
Run Code Online (Sandbox Code Playgroud)

按照建议,我在我的数据库中保留刷新令牌.但我的问题是,如果我有更多的客户想要同步他们的日历怎么办?有没有办法忽视这个极限?当然没有.我现在想到的只是创建更多客户端ID.有什么建议吗?

DaI*_*mTo 35

每个用户(客户端用户)50个,如客户用户.不是client_id.对于验证您的应用程序的每个人,您可以让他们最多验证50次.您收到的每个刷新令牌都可以使用.50日之后,第一个将停止工作.我认为它们也将工作长达6个月,如果它已经使用了6个月,它将失效.

您可以让尽可能多的人使用您的客户端(client_id),因为您愿意对您进行身份验证.你不会有任何问题.

来自此处的 Google Oauth2文档

令牌到期

您必须编写代码以预测授予的令牌可能不再起作用的可能性.由于以下原因之一,令牌可能会停止工作:

•用户已撤消访问权限.

•令牌已使用六个月.

•用户更改了密码,令牌包含Gmail范围.

•用户帐户已超过一定数量的令牌请求.

目前每个客户端的每个用户帐户限制为50个刷新令牌.如果达到限制,则创建新令牌会自动使最旧的令牌无效而不会发出警告.此限制不适用于服务帐户.

用户帐户或服务帐户可以在所有客户端上拥有的令牌总数也有更大的限制.大多数普通用户不会超过此限制,但开发人员的测试帐户可能会超出此限制.

如果您需要授权多个程序,计算机或设备,则一种解决方法是将您为每个用户帐户授权的客户端数量限制为15或20.如果您是Google Apps管理员,则可以创建其他管理员用户并使用它们授权一些客户.

问题:你在哪里找到这个?我想向谷歌报告它有点令人困惑

注意:在安全的长期存储中保存刷新令牌,并且只要它们仍然有效,就继续使用它们.限制适用于每个客户端 - 用户组合以及所有客户端中的每个用户发布的刷新令牌的数量,并且这些限制是不同的.如果您的应用程序请求足够的刷新令牌超过其中一个限制,则较旧的刷新令牌将停止工作.

  • 可以拥有 50+ 刷新令牌的用户。它与网站无关。如果用户登录,您将获得一个刷新令牌,如果他们再次登录,他们将获得另一个刷新令牌。他们最多可以拥有 50 个刷新令牌。保存最新的刷新令牌而不是使用旧的刷新令牌很重要。如果您有 80 多个网站,那么您应该有 80 多个项目,您不应该在不同的应用程序之间共享客户端。 (2认同)