我有一个期待用户对象的express
服务器。我是通过ajax
电话向服务器提交jQuery ajax
请求的。这是我的客户端代码:
var user = {
"first_name": "Jimi",
"last_name": "Hendrix",
"email": "jimi@gmail.com"
};
$.ajax({
type: 'POST',
url: 'http://localhost:9000/stuff',
dataType: 'json',
data: {user: user}
});
身体永远不会进入express
。这是我的express
设置。
var app = express();
app.use(bodyParser.json());
if (req.method === 'OPTIONS') {
res.send(200);
} else {
next();
}
}
app.post('/stuff', function(req, res) {
'use strict';
console.log(req.body);
res.send(200);
});
我的console.log(req.body)
总是返回相同的东西,
body: {}
我需要做些什么让我的身体穿过我的服务器?我需要序列化数据吗?我以为我可以附上这个物品了。
答案 0 :(得分:0)
在jQuery
中,ajax
默认Content-Type
为application/x-www-form-urlencoded
。使用express
服务器,如果要解析该类型的内容,则必须添加bodyParser.urlencoded({extended: false})
。现在当我console.log
出我的身体时,我得到了我所期待的。