管理Google OAuth令牌的最佳做法

时间:2018-09-17 17:40:55

标签: ruby-on-rails ruby google-api google-oauth

我正在使用Google calendar api制作网络应用。

在此应用中,我要求用户在注册时使用Google Oauth2授权Google Calendar Access。

我的问题是返回的令牌已在1小时后过期,因此用户每次都必须进行授权。

我了解我无法更改Google API中的过期时间。

我的问题是如何使oauth令牌保持活动状态?

我必须使用刷新令牌使cron更新令牌吗?

谢谢

2 个答案:

答案 0 :(得分:0)

我在Java上找到了有关auto的文档

https://developers.google.com/api-client-library/java/google-api-java-client/oauth2

  

访问令牌的有效期通常为1小时,   如果您尝试使用它,将会得到一个错误。 Google凭证   负责自动“刷新”令牌,这意味着   获取新的访问令牌

我想知道Ruby也有自动更新。

https://developers.google.com/api-client-library/ruby/auth/web-app#exchange-authorization-code

  

在用户授予对所请求范围的脱机访问权限之后,您可以   继续使用API​​客户端访问用户的Google API   当用户离线时代表。客户端对象将刷新   根据需要访问令牌。

答案 1 :(得分:0)

最后,我通过询问Github问题得到答案

https://github.com/googleapis/google-api-ruby-client/issues/719