为什么我不能收到POST请求正文中发送的纯文本?
从客户端浏览器发出的请求:
var xhr = new XMLHttpRequest();
xhr.open("POST", "/MyRoute/MySubRoute");
xhr.setRequestHeader("Content-Type", "text/plain;charset=UTF-8");
xhr.send("hello!");
将Express用于我的节点服务器:
app.post('/MyRoute/MySubRoute', function(req, res) {
console.log("Received:"+require('util').inspect(req.body,{depth:null});
res.send();
});
登录到我得到的控制台:
Received:{}
我尝试了text/plain
(没有字符集),结果相同。如果我将我的内容类型更改为application/json
并传递一个简单的JSON字符串,则可以正常工作。
答案 0 :(得分:12)
总结以上回答问题的评论:
答案 1 :(得分:2)