变量值更新将值更改为null

时间:2019-07-02 06:56:53

标签: javascript node.js

我有一个连接到此路由的应用程序。这条路线是为了更新用户的个人详细信息,在此过程中我没有收到任何错误,但是由于某种原因,无论输入什么内容,mongodb上的值都将更改为null。

app.post('/updateUserDetails', verifyToken, function(req, res){
    jwt.verify(req.token, 'secretkey', (err, authData) => {
        if(err) {
            res.sendStatus(403);
        } else {
            var userID = authData._id,
                newFirstName = req.firstName;
                // lastName = req.lastName,
                // age = req.age,
                // gender = req.gender,
                // phoneNumber = req.body.phoneNumber;
            console.log(err);

            user.update({_id: userID}, {firstName: newFirstName}, function(err, updatedUser){
                if(err){
                    console.log("error updating user firstName");
                    res.json({msg:"error updating user firstName"});
                }else{
                    console.log("user firstName has been updated");
                    res.json({msg:"user firstName has been updated", firstName: newFirstName});
                }
            },function(err){
                console.error(err);
            });
        }
    });   
});

2 个答案:

答案 0 :(得分:0)

Console.log您的req可以准确地看到您正在发送的内容,也可以使用调试器来随时了解正在发送和接收的内容。

答案 1 :(得分:0)

控制台req.firstname并检查将要打印的内容。尝试req.body.firstName,您的路线是邮寄电话