mongoose passport.js验证是否引发未授权错误?

z5btuh9x  于 2022-11-13  发布在  Go
关注(0)|答案(1)|浏览(123)

我正在尝试使用passport.js与mongoose。发送的数据是正确的,但我得到一个错误代码401说未经授权?
这里是后端控制器。

userController.login = (req, res) =>{
    console.log("recieved");
    console.log(req.body);
    const user = new Users({
        username: req.body.mail,
        password: req.body.password
    })

    req.login(user, (err) => {
        if (err){
            res.status(404).send(err);
        }else{
            console.log("user found");
            passport.authenticate("local", (err, user, info) => {
                if (err) {
                    return res.status(401).json(err);
                }
                if (user) {
                    return res.status(200).send(user);
                } else {
                    res.status(401).json(info);
                }
            })(req, res, () => {
                console.log("Authenticated!");
                res.status(200).send(user);
            });
        }
    })
}
hi3rlvi2

hi3rlvi21#

在发帖时,我需要将req.body.mail重命名为req.body.username,因为auth和req.login直接查找req正文并搜索username对象。

相关问题