OAuth :通过身份验证后,通过路由使用访问令牌

时间:2021-01-30 13:55:05

标签: node.js express passport.js spotify

我在尝试理解 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);
  })
}

不是最佳实践。但是我该如何恢复访问令牌呢?

任何帮助/评论都很受欢迎。谢谢!

1 个答案:

答案 0 :(得分:1)

因此,据我所知,您指出的“不是最佳实践”部分是在流程中保存 accessToken 的唯一可能性。 第二个片段正是您创建用户帐户并将其保存到的位置,例如一个数据库。这样做您还可以保存 accessTokenrefreshToken