2013-10-25 150 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()' –