使用Express 4parsingNode.js中的JSON发布请求

我试图写一个简单的Express应用程序,收到一个Post请求中的JSON。 这是我到目前为止在服务器上:

var express = require('express'); var bodyParser = require('body-parser'); var app = express(); app.use(bodyParser.json()); app.post('/acceptContacts', function(req, res) { 'use strict'; console.log(req.body); console.log(req.body.hello); res.send(200); }); app.listen(8080); 

这里是我在浏览器上的客户端上的东西:

 var req = new XMLHttpRequest(); req.open('POST', 'http://localhost:8080/acceptContacts?Content-Type=application/json'); var obj = {hello:'world'}; req.send(JSON.stringify(obj)) 

但是,我在服务器的控制台上收到以下输出:

 {} undefined 

任何人都可以提出原因?

它会工作,如果你使用setRequestHeader

 var req = new XMLHttpRequest(); req.open('POST', 'http://localhost:8080/acceptContacts'); req.setRequestHeader("Content-Type", "application/json;charset=UTF-8"); var obj = {hello:'world'}; req.send(JSON.stringify(obj));