Node.js 快件未读取请求有效负载

Node.js 快件未读取请求有效负载,node.js,express,Node.js,Express,试图获得一个post工作,基本上是用户配置文件,整个对象从express(存储在mongo中)发送到一个角度形式,但是,我无法获得读取我发送回的数据的路径(使用body解析器) 首先,发送部分是一个使用角度: $scope.saveProfile = function(empty) { $scope.user.updateMe = false; $http({ method: 'POST', url: '/api/postProfile/'+$sc

试图获得一个post工作,基本上是用户配置文件,整个对象从express(存储在mongo中)发送到一个角度形式,但是,我无法获得读取我发送回的数据的路径(使用body解析器)

首先,发送部分是一个使用角度:

$scope.saveProfile = function(empty) {
    $scope.user.updateMe = false;
    $http({
        method: 'POST',
        url: '/api/postProfile/'+$scope.user._id,
        data: $scope.user
    })
        .success(function(data, status, headers, config) {
            console.log("I updated");
        })
        .error(function(data, status, headers, config) {
            console.log("Big fat fail that one");
        });

    }
这给了我以下的帖子:

     {
        "startedDateTime": "2015-06-21T06:53:50.363Z",
        "time": 0,
        "request": {
          "method": "POST",
          "url": "http://localhost:29771/api/postProfile/55841857579127018071ad97",
          "httpVersion": "unknown",
          "headers": [
            {
              "name": "Accept",
              "value": "application/json, text/plain, */*"
            },
            {
              "name": "Referer",
              "value": "http://localhost:29771/internal/profile"
            },
            {
              "name": "Origin",
              "value": "http://localhost:29771"
            },
            {
              "name": "User-Agent",
              "value": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_10_3) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/43.0.2357.124 Safari/537.36"
            },
            {
              "name": "Content-Type",
              "value": "application/json;charset=UTF-8"
            }
          ],
          "queryString": [],
          "cookies": [],
          "headersSize": -1,
          "bodySize": 448,
          "postData": {
            "mimeType": "application/json;charset=UTF-8",
            "text": "{\"_id\":\"55841857579127018071ad97\",\"updateMe\":false,\"imageUrl\":\"https://lh3.googleusercontent.com/-XdUIqdMkCWA/AAAAAAAAAAI/AAAAAAAAAAA/4252rscbv5M/photo.jpg?sz=50\",\"familyName\":\"Bberg\",\"firstName\":\"Ben\",\"userName\":\"Ben Bberg\",\"__v\":0,\"google\":{\"email\":\"ben.bberg@cm.com\",\"name\":\"Ben Bberg\",\"token\":\"ya29.lwGTHvRHvXhnBGTYSFVztPrjlkvtq-0HenpocX0VCsUmnbMt5zpluo411-0nyCqH2xgfwO4YCTuRyA\",\"id\":\"108193570873442725868\"}}"
          }
        },
        "response": {
          "status": 0,
          "statusText": "",
          "httpVersion": "unknown",
          "headers": [],
          "cookies": [],
          "content": {
            "size": 0,
            "mimeType": "x-unknown"
          },
          "redirectURL": "",
          "headersSize": -1,
          "bodySize": -1,
          "_transferSize": 0,
          "_error": "net::ERR_EMPTY_RESPONSE"
        },
        "cache": {},
        "timings": {
          "blocked": -1,
          "dns": -1,
          "connect": -1,
          "send": 0,
          "wait": 0,
          "receive": 0,
          "ssl": -1
        },
        "pageref": "page_8"
      }
    ]
  }
}
但是,当我尝试在路由器中使用urlencode后面的主体时

app.post('/api/postProfile/:id', isLoggedIn, urlencodedParser, function(req, res) {
    console.log("I got called here");
    var id = req.params.id;
       console.log("I will update " + id + " with : " + req.body);
        for (var key in req.body){
            console.log(key + " value: " + req.body[key]);
        }
});
我什么也没有得到,正如可以看到的那样,我试图通过object req.body逐步查找键,但似乎什么都没有,下面是输出日志

POST /api/postProfile/55841857579127018071ad97 - - ms - -
I got called here
I will update 55841857579127018071ad97 with : [object Object]

有人有什么建议吗?

经过一番讨价还价,我发现了这个问题。缺少的行是:

app.use(bodyParser.json())

问题似乎是,如果你错过了这一行,你会得到一个完全空的req.body,然而,一旦我有了它,一切都会完美地工作。
希望这对某人有所帮助:)

经过一番讨价还价,我发现了这个问题。缺少的行是:

app.use(bodyParser.json())

问题似乎是,如果你错过了这一行,你会得到一个完全空的req.body,然而,一旦我有了它,一切都会完美地工作。
希望这对某人有所帮助:)

经过一番讨价还价,我发现了这个问题。缺少的行是:

app.use(bodyParser.json())

问题似乎是,如果你错过了这一行,你会得到一个完全空的req.body,然而,一旦我有了它,一切都会完美地工作。
希望这对某人有所帮助:)

经过一番讨价还价,我发现了这个问题。缺少的行是:

app.use(bodyParser.json())

问题似乎是,如果你错过了这一行,你会得到一个完全空的req.body,然而,一旦我有了它,一切都会完美地工作。 希望这对某人有帮助:)