如何用curl查询Node.js Express
我将通过一个简单的应用程序通过curltestingNodejs。
curl命令是:
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参数? 我错过了什么吗?
要使用Express读取POST
数据,您必须使用app.use(express.bodyParser());
。
在这里引用:
该属性是一个包含parsing的请求主体的对象。 这个特性是由
bodyParser()
中间件提供的,尽pipe其他的bodyparsing中间件也可以遵循这个约定。 当使用bodyParser()
时,此属性默认为{}
。
虽然它表示使用bodyParser()
时,Express默认为{}
,但我认为这是一个印刷错误,是相反的。