使用Google Identity Services(GIS)JavaScript SDK,如何扩展会话



perhttps://developers.google.com/identity/oauth2/web/reference/js-reference

似乎没有refresh_token流。有效期是1小时,所以这并不可怕。但我想在用户仍在积极使用网络应用程序时延长会话。

如回答中所述

要以透明的方式为最终用户刷新访问令牌,您必须使用刷新令牌,此令牌也将出现在响应您的呼叫。

使用此令牌,您可以对URL执行POST调用:https://www.googleapis.com/oauth2/v4/token带有以下请求机身

client_id: <YOUR_CLIENT_ID>
client_secret: <YOUR_CLIENT_SECRET>
refresh_token: <REFRESH_TOKEN_FOR_THE_USER>
grant_type: refresh_token

刷新令牌永远不会过期,因此您可以多次使用它。这个响应将是这样的JSON:

{
"access_token": "your refreshed access token",
"expires_in": 3599,
"scope": "Set of scope which you have given",
"token_type": "Bearer"
}

你也可以参考Github问题和答案,其中建议的方法是使用监听器和reloadAuth。

有关更多信息,您可以参考文档、Answer和doc。

最新更新