我目前有一个 mongoose/express/passportjs 应用程序,可以成功登录和注销。但是, session 中仅存储用户 ID。我想要存储整个用户对象。
这是我使用的代码:
passport.serializeUser(function(user, done) {
done(null, user._id);
});
passport.deserializeUser(function(_id, done) {
done(null, { _id: _id });
});
效果很好,这就是我尝试序列化整个用户的原因:
passport.serializeUser(function(user, done) {
done(null, user._id);
});
passport.deserializeUser(function(user, done) {
done(null, user);
});
但是,它不存储任何 session 。
我做错了什么?
最佳答案
在serializeUser
中,您需要将整个用户传递给done
:
passport.serializeUser(function(user, done) {
done(null, user);
});
passport.deserializeUser(function(user, done) {
done(null, user);
});
关于node.js - Passport.js - 在 session 中存储信息,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16047570/