【发布时间】:2020-02-06 21:17:05
【问题描述】:
我需要扩展或刷新令牌,因为现在是 3600 秒。 我想了解如何更好地使用访问授权脱机或 refresh_token
【问题讨论】:
标签: angular google-drive-api access-token
我需要扩展或刷新令牌,因为现在是 3600 秒。 我想了解如何更好地使用访问授权脱机或 refresh_token
【问题讨论】:
标签: angular google-drive-api access-token
access_type 通常默认设置为online,它定义用户是否需要在场才能刷新访问令牌。如documentation 中所述:
允许的值是离线和在线。效果记录在Offline Access;如果正在请求访问令牌,则除非指定离线,否则客户端不会收到刷新令牌。
为了授予对您的应用程序的离线访问权限,您可以使用GoogleAuth.grantOfflineAccess (See here) 代替GoogleAuth.signIn()。
按照this Javascript client API Quickstart for google sheet,唯一的代码修改将在handleAuthClick()函数中,如下所示:
function handleAuthClick(event) {
gapi.auth2.getAuthInstance().grantOfflineAccess({scope: SCOPES});
}
这不是客户端应用程序经常使用的功能,因为它们通常是短暂的。这些应用程序通常让访问令牌过期,然后再次提示用户登录。但是,通过将此参数设置为脱机,您可以获得刷新令牌并避免每 1 小时提示用户一次。这取决于您和您的应用程序的需求。
【讨论】: