我在尝试理解 OAuth 流程时遇到了一些困难。我目前正在使用 Spotify API,并且我使用过passportjs 来验证用户。我不明白的是,既然用户已通过身份验证,如何从我的应用程序进行 api 调用。
Here 是我的应用的完整代码,但在这部分中,我如何访问 access_token 以获取播放列表数据?
app.get('/playlists', ensureAuth, async(req,res,next) => {
let playlists_url = `https://api.spotify.com/v1/users/${req.user.id}/playlists`;
res.render('playlists')
})
因为,正如我被告知的,将访问令牌存储在这部分的某处
function(accessToken, refreshToken, expires_in, profile, done) {
process.nextTick(function(){
return done(null, profile);
})
}
不是最佳实践。但是我该如何恢复访问令牌呢?
任何帮助/评论都很受欢迎。谢谢!
答案 0 :(得分:1)
因此,据我所知,您指出的“不是最佳实践”部分是在流程中保存 accessToken
的唯一可能性。
第二个片段正是您创建用户帐户并将其保存到的位置,例如一个数据库。这样做您还可以保存 accessToken
和 refreshToken
。