Nodejs Passport无密码更新req.user到用户对象

时间:2018-06-07 15:04:53

标签: node.js express session passport.js password-less

我正在构建密码重置功能。我正在使用passwordless向用户发送电子邮件,一旦他们点击它,他们就会得到一个临时会话。

对于一般登录,我使用PassportJs

passportJs将req.user设置为数据库中的用户对象。这是首选的情况。

无密码将req.user设置为经过身份验证的用户的电子邮件地址。

我想更新req.user,以便它也是数据库中的用户对象。

我试过了:

  • 一旦我使用无密码验证,我在数据库中查找用户并尝试设置:req.user = dbResponse - 无济于事。

  • 我已尝试req.login(dbResponse, (err) => { //handle error })无效 - 它适用于此请求,但之后会重置为电子邮件。

我认为这与passport.serialize和passport.deserialize有关 - 虽然我不确定......

简单来说,如何永久更改当前会话的req.user值?

0 个答案:

没有答案