使用户设置在请求中可用

Make user settings available in req

我知道 passport 公开了 req.user 中的当前用户(我认为使用 'passport' 策略)。我想对特定用户的设置做类似的事情,这些设置存储在一个单独的集合中(以便它们在 req.settings 中可用)。我该怎么做?

serializeUser 方法负责 https://github.com/jaredhanson/passport#sessions

passport.serializeUser(function(user, done) {
  done(null, user.id);
});

因此,除了序列化 user.id,您还可以序列化设置:

 passport.serializeUser(function(user, done) {
    var sessionUser = { _id: user._id, name: user.name, settings: [...] }
    done(null, sessionUser);
});

您可能想阅读