Google OAuth,刷新令牌无效

Google OAuth, Refresh token invalid

我正在使用 Google PHP SDK 连接到 Google 我的公司并获取访问令牌。

与 Google(客户端)连接后,一切正常,但大约 1-2 天过去后,我开始收到“Bad Request”和错误代码“invalid_grant” here.

意味着刷新令牌不再有效。然后我必须断开 google 连接并重新连接以使其工作 1-2 天。

我也是setting the refresh token for offline use。有什么想法吗?

刷新令牌可以 expire

有多种原因
  • 用户已撤销您的应用的访问权限。
  • 刷新令牌已六个月未使用。
  • 用户更改了密码并且刷新令牌包含 Gmail 范围。
  • 用户帐户已超过授予(实时)刷新令牌的最大数量。
  • 用户属于 Google 具有有效会话控制策略的云平台组织。

目前最常见的是

为外部用户类型配置了 OAuth 同意屏幕且发布状态为“测试”的 Google Cloud Platform 项目发布了 7 天后过期的刷新令牌。

您应该检查的第一件事是您的应用程序设置为生产,而不是在同意屏幕中进行测试。