如何在纯客户端应用程序中刷新Google OAuth 2.0 API中的access_token?

时间:2017-10-05 20:14:16

标签: javascript google-oauth

在以下问题中我的问题已经回答了大约90%:
How to get the refresh token with Google OAuth2 Javascript library?

我有一个客户端JS网络应用程序。在此应用程序中,我想使用Google API。为此,我需要每小时刷新access_token,但不带一次又一次地向用户显示Google登录屏幕。目前还没有服务器端代码,我想避免使用服务器端代码,因此我的应用程序更具可移植性(例如Electron)。

这意味着我唯一的可能性是上面链接的问题中答案的选项二。它说:

  

让您的客户根据需要继续请求访问令牌。设置immediate=true,以便与用户之间没有可见的互动。

我已查看了两个文档:Google API Client LibraryGoogle Identity Platform(这是客户端库在后台使用的直接OAuth 2.0端点)。

我找不到名为immediate的选项。但是这个anser告诉我,应该可以在纯客户端Web应用程序中刷新access_token但不使用refresh_token。但是如何?

另外,我完全想避免使用客户端库,因为将它与基于webpack的项目集成起来太困难了...所以我主要对HTTP请求再次对OAuth端点感兴趣应该看起来像。

编辑:修正了错误的链接

1 个答案:

答案 0 :(得分:0)

您链接的答案是指客户端库的早期版本。当前版本记录在https://developers.google.com/identity/protocols/OAuth2UserAgent,我相信(NB未经测试)相当于immediate=true的{​​{1}}