1
我有一個快速應用程序,我試圖在一小時後刷新雅虎OAuth 1.0訪問令牌,因此用戶不必重新登錄。我正在使用https-passport-yahoo-oauth護照策略,該策略適用於最初的OAuth。刷新雅虎OAuth 1.0訪問令牌使用護照
有一個刷新OAuth 2.0令牌的策略(passport-oauth2-refresh),這是我無法工作的原因(我認爲很明顯)。
令牌這裏刷新訪問雅虎文檔=>https://developer.yahoo.com/oauth/guide/oauth-refreshaccesstoken.html
這是我初次OAuth的代碼如下。那麼我怎樣才能根據這個交換過期或過期的令牌?
passport.serializeUser(function(user, done) {
done(null, user);
});
passport.deserializeUser(function(obj, done) {
done(null, obj);
});
var strategy = new YahooStrategy({
consumerKey: APP_KEY,
consumerSecret: APP_SECRET,
callbackURL: (process.env.APP_URL || require('./conf.js').APP_URL) + 'auth/yahoo/callback'
},
function(token, tokenSecret, profile, done) {
var data = profile._json;
var userObj = {
id: profile.id,
name: data.profile.nickname,
avatar: data.profile.image.imageUrl,
dateJoined: new Date().getTime(),
lastUpdated: new Date().getTime(),
lastVisit: new Date().getTime(),
accessToken: token,
tokenSecret: tokenSecret,
sessionHandle: profile.oauth_session_handle
};
return done(null, userObj);
}
);
passport.use(strategy);
我在想,我可能能夠使用請求,並推出自己的令牌刷新,但我有點不確定從哪裏開始。任何幫助?真的很感謝任何建議。
謝謝!這完全奏效。我堅持這一點,我打電話30分鐘的函數結束,它看起來就是相應地更新標記。 – Matt