无法访问req.user的属性
我在使用passport.js进行身份validation的Node中编写代码。
console.log(req.user);
回报
{ group: 'CuManager', password: 'password', username: 'administrator', cu_id: 2, _id: 569fd3f4328ef124be533caf }
但
console.log(req.user.cu_id);
回报
undefined
我在想,cu_id属性可能是不可用的,由于序列化/反序列化,但它在那里。 我只是无法访问它。 我怎样才能做到这一点? 我需要它
find({cu_id : req.user.cu_id})
顺便说一句,我不禁想着passport.js是一点点过于复杂(也许我们只是不相处)。 还有什么我可以用来validation用户在节点(我使用快递)?
如果req.user
是一个Mongoose文档,则应该将cu_id
添加到适当的模式中。
否则,你可以使用类似req.user.toObject().cu_id
来访问属性,或者确保doc.toObject()
的结果以某种方式被分配给req.user
。
至于护照更换:这取决于你想如何authentication你的用户。 如果您将POST
login表单发送到Express路由,则可以自行执行密码validation和会话设置。
尝试parsing它在JSON中。
JSON.parse(req.user)['cu_id']