5

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

4

2 回答 2

8

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

根据Oauth2访问令牌在一小时后过期。访问令牌用于请求访问 api 并返回您需要的数据。没有办法将访问令牌的生命周期延长到一小时以上。您需要使用刷新令牌来请求新的访问令牌。

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

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

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

于 2018-10-01T07:28:04.457 回答
4

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

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

于 2018-10-02T00:45:00.263 回答