我使用快递4.0+,这是我的代码
var express = require('express');
app = express();
var bodyParser = require('body-parser');
app.use(express.static(__dirname + '/public'));
app.use(bodyParser.urlencoded({ extended: false }))
app.use(bodyParser.json());
app.listen(SERVER_LISTEN_PORT_TWO);
app.use(function (req, res, next) {
console.log(req.body);
});
在前端,我发送:
JSON.stringify({" test":" message"});
后端打印的req.body数据是:
{
{"test":"message"} : ''
}
我只使用nodejs'预先创建createServer函数,请求数据将作为
进入{"test":"message"}
我的问题是,是否自动表达json编码/字符串化传入的数据(看起来像它),我怎么能够禁用它?我知道我不能对从前端发送的数据进行编码,但我不确定为什么要更改它。
答案 0 :(得分:0)
您未在请求中发送正确的Content-Type
。如果您要发送JSON有效内容,Content-Type
必须是application/json
而不是application/x-www-form-urlencoded
。