NodeJS函数无法识别变量

时间:2015-07-22 01:23:45

标签: javascript node.js authentication endpoints

我创建了一个电子邮件检查功能,以便在注册新用户之前验证电子邮件是否存在。我将req.body分配给了用户。但是,我的电子邮件检查器功能中的newUser功能无法识别变量用户。如何将用户传递给该功能,以便在电子邮件无法识别时我可以创建新用户?

这是我的代码:

app.post("/api/user", function(req, res) {

    var user = req.body;
    console.log("line 117", user);

    var searchUser = {
        email: user.email
    };

    User.findOne(searchUser, function(err, user){
        if (err) throw err;

        if (user) return res.status(401).send({
            message: "email already exists"
        });

        var newUser = new User({
            firstName: user.firstName,
            lastName: user.lastName,
            email: user.email,
            password: user.password
        });

        newUser.save(function(err) {
            createSendToken(newUser, res);

        });

    });

});

1 个答案:

答案 0 :(得分:0)

这是我更正后的代码:

app.post(" / api / user",function(req,res){

var subscriber = req.body;

var searchUser = {
    email: subscriber.email
};

User.findOne(searchUser, subscriber, function(err, user){
    if (err) throw err;

    if (user) return res.status(401).send({
        message: "email already exists"
    });

    var newUser = new User({
        firstName: subscriber.firstName,
        lastName: subscriber.lastName,
        email: subscriber.email,
        password: subscriber.password
    });

    newUser.save(function(err) {
        createSendToken(newUser, res);

    });

});

});