从passportjs中的刷新令牌获取oauth访问令牌
要确定何时使用刷新令牌来请求新的访问令牌,我知道两种方法(下面)。 无需修改passport-google-oauth库,这两种方法都可行吗?
1)“先发制人”的方法
- 保存授权后的访问令牌的到期时间
- 每当使用访问令牌访问API时,请根据当前时间检查到期时间
- 如果访问令牌没有过期,请使用它来访问API
- 如果访问令牌已过期(或接近过期),请提供刷新令牌以获取新的访问令牌
2)“处理失败”方法
- 始终提供访问令牌
- 如果访问令牌未通过身份validation,请提供刷新令牌,以获取新的访问令牌
谢谢。 也欢迎任何替代品。
请注意,Passport不会主动使用访问令牌或刷新令牌,除了在login期间获取用户configuration文件。 你是应用程序负责使用这些令牌,当做任何API请求是必要的。 因此,您可以实施您描述的任何一种方法,Passport不参与过程。
另请参阅: https : //github.com/jaredhanson/passport-google-oauth/issues/23
我写了一个插件来处理这个有点简单: https : //github.com/fiznool/passport-oauth2-refresh
- Google日历推送API节点不工作?
- 如何在使用服务帐户上传时修复Google云端硬盘的存储空间不足问题
- nodejs googleapis,authClient.request不是一个函数
- (Nodejs)Google oAuth2:缺less必需的参数:grant_type
- NodeJS Google API客户端:我如何知道访问令牌已过期?
- 用browserify捆绑google-api-nodejs-client不起作用
- 从Gmail API获取电子邮件的直接链接(列表消息)
- 无法通过nodejs中的google api发送邮件
- 如何刷新Google Analytics(分析)报告API v3的访问令牌