我对此感到疯狂,我花了几个小时在Stackoverflow和网上,尝试了这个和另一个,但仍然无法得到结果。
我是node.js上的一个(非常)新手,但是已成功地使用教程来使用bodyParser.urlencoded
构建一个(非常)简单的表单,并且我可以成功恢复并显示发布的数据。现在我想使用bodyParser.json()
做同样的事情 - 但无论我尝试什么,结果总是空的。
以下是代码:
var express = require('express');
var session = require('cookie-session');
var bodyParser = require('body-parser');
var urlencodedParser = bodyParser.urlencoded({ extended: false });
var jsonParser = bodyParser.json();
var app = express();
// JSON testing
app.post('/json-test', jsonParser, function(req, res) {
if (!req.body) return res.sendStatus(400);
console.log(JSON.stringify(req.body));
console.log(req.body.title);
res.status(200).send(req.body.title);
})
// Can't get anything else
.use(function(req, res, next){
res.setHeader('Content-Type', 'text/plain');
res.status(404).send('Page introuvable !');
})
.listen(8090);
这是卷曲请求
$curl -X POST -H "application/json" -d '{"title":"test-title"}' http://localhost:8090/json-test
第一个console.log的结果是{}
,第二个只是undefined
的结果。
我做错了什么?