NodeJS没有通过Postman将对象键值对传递给MongoDB

时间:2015-11-06 16:07:33

标签: node.js mongodb postman

我是MongoDB的新手,已经感受到[在Windows上]使用它时遇到的挫折感。我的问题是我正在通过POSTMAN创建一个USER对象。

这是用于将用户POST到MongoDB的 server.js 代码。
附:此外,Sublime仅突出显示 .name ,但不突出显示 .username和.password。

apiRouter.route('/users')

    // create a user (accessed at POST http://localhost:8080/users)
    .post(function(req, res) {

        var user = new User();      // create a new instance of the User model
        user.name = req.body.name;  // set the users name (comes from the request)
        user.username = req.body.username;  // set the users username (comes from the request)
        user.password = req.body.password;  // set the users password (comes from the request)

        user.save(function(err) {
            if (err) {
                // duplicate entry
                if (err.code == 11000) 
                    return res.json({ success: false, message: 'A user with that username already exists. '});
                else 
                    return res.send(err);
            }

            // return a message
            res.json({ message: 'User created!' });
        });

    })

也许我不知道一些警告。感谢。

1 个答案:

答案 0 :(得分:0)

请确保在请求参数解析后连接到mongoDB实例。

例如:

//parse request parameters

app.use(bodyParser.urlencoded({ extended: true }));
app.use(bodyParser.json());

//connect to MongoDB

mongoose.connect('mongodb://localhost:27017');