我已经针对我使用的策略设置了serialize和deserializeUser函数,serialize函数通过数据库中注册的用户的ID进行发送,然后deserializeUser函数在数据库中查找ID,然后将其附加到req.user;但是,这就是问题所在。它没有附加。
我一直在试图弄清为什么它不起作用,似乎一切正常,当我再调用done()时;功能似乎不起作用。附带的所有内容是带有用户条目的passport
条目,该条目具有提供的ID的值。
passport.serializeUser(function(user, done) {
console.log('id ser ' + user);
done(null, user);
});
passport.deserializeUser(function(uid, done) {
console.log('id des ' + uid);
authentication.user(uid).then(function(user){
console.log(user);
done(null, user);
}).catch(function(err){
done(err);
});
});
我希望在有一个用户对象以及返回的数据的情况下得到结果。但是我在会话对象中得到的只是这个;
Session {
cookie:
{ path: '/',
_expires: 2019-05-24T21:41:31.535Z,
originalMaxAge: 86400000,
httpOnly: true },
passport: { user: 1 } }