2013-10-25 126 views
6

确定何时使用刷新令牌要求一个新的访问令牌,我所知道的两种方法(下)。或者是这些方法的可能,而无需修改passport-google-oauth库?获得来自刷新令牌passportjs OAuth访问令牌

1)“先发制人”的方法

  • 保存访问令牌时,其授予
  • 核对当前时间的到期时间时使用访问令牌访问API到期时间
  • 如果访问令牌没有过期,用它来访问API
  • 如果访问令牌过期(或接近过期的存在),供应刷新令牌获取新的访问令牌

2)“处理失败”的方法

  • 如果访问令牌身份验证失败总是提供访问令牌
  • ,供应刷新令牌,获得新的访问令牌

感谢。也欢迎任何替代品。

回答

5

我写了一个插件,使处理这个更容易一些:https://github.com/fiznool/passport-oauth2-refresh

+0

很漂亮,谢谢你 - 集成了护照,谷歌-的OAuth和谷歌的API-的NodeJS客户端与编辑谷歌电子表格非常顺利。 –

+0

见4.动态令牌,在基本用法这里:https://github.com/jpillora/node-edit-google-spreadsheet,在那里我现在只是通过打电话到'refresh.requestNewAccessToken()' –