GoogleAPI oauth2 刷新令牌将在 1 小时后过期

GoogleAPI oauth2 refresh token expires in 1 hour

我在我的应用程序中使用 Google API,并且 oauth2 刷新令牌在 1 小时后过期。我正在使用此刷新令牌来执行每天运行的任务。我使用 OAuth2 游乐场创建刷新令牌。有没有办法延长刷新令牌的到期时间? (1 个月)

我认为您在这里混淆了术语。

根据 Oauth2 访问令牌在一小时后过期。访问令牌用于请求访问 api 和 return 您需要的数据。无法将访问令牌的生命周期延长一小时以上。您需要使用刷新令牌来请求新的访问令牌。

刷新令牌的寿命极长,通常不会过期。刷新令牌用于请求新的访问令牌。如果在六个月内未使用,大部分刷新令牌不会过期,但 google 会自动使它过期。此外,如果用户删除您的访问权限,则刷新令牌也将自动过期。

如果您使用仅用于测试目的的 Outh2 playground 创建刷新令牌,它也会过期。

如果您使用 oauth2 playground 创建刷新令牌,那么您不应该这样做,您应该创建自己的应用程序来请求令牌。

如前所述,使用 OAuth 2.0 Playground 创建的刷新令牌会在几个小时后自动撤销,因为 playground 主要用于测试目的。但是,您可以将 OAuth 游乐场配置为使用您自己的应用凭据(使用右上角的 'wheely' 图标)。如果您使用自己的应用凭据,刷新令牌将不会被撤销。

也就是说,您似乎想要 运行 访问 Google API 的后台服务。为此,如果您不访问特定用户的数据,您可能需要使用服务帐户。