使用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));