2

我将通过 curl 使用 Nodejs 测试一个简单的应用程序。

卷曲命令是:

curl -i -X POST -H 'Content-Type: application/json' -d '{"name": "Name"}' http://localhost:3000/users

Node.js 运行如下:

app.post('/users', users.addUser);

和用户的其他地方:

exports.addUser = function(req, res) {
console.log(req.query);
//etc.

输出是{}。相反,req.body 是未定义的。

如何使用 curl 检索该参数?我错过了什么吗?

4

1 回答 1

2

要使用 Express 读取POST数据,您必须使用app.use(express.bodyParser());.

在这里引用:

此属性是一个包含已解析请求正文的对象。此功能由bodyParser()中间件提供,但其他正文解析中间件也可能遵循此约定。此属性默认为何{}bodyParser()使用。

虽然它说 Express 默认为何{}bodyParser()使用,但我认为这是一个印刷错误,恰恰相反。

于 2013-08-16T17:05:48.480 回答