使用NodeJS / ExpressJS和Postman无法获取POST数据
这是我的服务器的代码:
var express = require('express'); var bodyParser = require("body-parser"); var app = express(); app.use(bodyParser.json()); app.post("/", function(req, res) { res.send(req.body); }); app.listen(3000, function () { console.log('Example app listening on port 3000!'); });
从邮递员,我启动一个POST请求到http:// localhost:3000 /和身体/forms数据我有一个关键“富”和价值“酒吧”。
但是,我不断收到一个空的对象在响应。 req.body
属性总是空的。
我错过了什么?
添加请求的编码。 这是一个例子
.. app.use(bodyParser.json()); app.use(bodyParser.urlencoded({ extended: true })); ..
然后在邮递员中selectx-www-form-urlencoded
或将Content-Type设置为application/json
并selectraw
编辑使用原始
生的
{ "foo": "bar" }
头
Content-Type: application/json
编辑#2回答来自聊天的问题:
- 为什么它不能使用表单数据?
你当然可以,只要看看这个答案如何处理expression式4 FormData
- 使用
x-www-form-urlencoded
和raw
的区别是什么?
application / json和application / x-www-form-urlencoded的区别