发布请求永远不会发生,只发送get

时间:2016-12-30 12:18:29

标签: node.js mongodb mongoose

我使用Mongoose和nodejs编写API。

我的users.js看起来如下:

var express = require('express');
var router = express.Router();
var user = require('../models/users.js');


router.post('/',function(req, res, next) {
  console.log("made a post");

            var user2 = new user();     // create a new instance of the Bear model
            user2.firstName = req.body.firstName;  // set the bears name (comes from the request)
        user2.lastName=req.body.lastName;
        user2.email=req.body.email;

            user2.save(function(err) {
                if (err)
                    res.send(err);

            console.log("User created");
            });


        })

//The model acts as our user object...this returns all users.
    .get('/', function(req, res, next) {
      console.log("sending a get request");
        user.find(function(err, users) {
           if (err)
               res.send(err);

           res.json(users);
       });

      })

module.exports = router;

当我发送获取请求时,它完美无缺。但是,我现在正在尝试开发POST请求。我发送如下请求:

http://localhost:4000/users?firstName=Han&lastName=Bo@email=haBo@yah.com

我在我的控制台中收到以下内容:

    sending a get request
GET /users?firstName=Han&lastName=Bo@email=haBo@yah.com
 200 15.522 ms - 1365

我在浏览器中收到了GET请求的输出。

我是节点的新手,并希望得到一些帮助。

感谢。

1 个答案:

答案 0 :(得分:2)

您将参数作为URL参数,而POST API从请求体中读取参数。

Here是POST参数的说明。 此外,如果您尚未使用它,请使用postman发送请求。