我有以下Node.js代码:
var express = require('express');
var app = express.createServer(express.logger());
app.use(express.bodyParser());
app.post('/', function(request, response) {
response.write(request.body.user);
response.end();
});
现在如果我POST一些东西:
curl -d user=Someone -H Accept:application/json --url http://localhost:5000
我得到Someone
,正如预期的那样。现在,如果我想要得到完整的请求体呢?我尝试做response.write(request.body)
,但Node.js抛出一个异常,说“第一个参数必须是字符串或Buffer”,然后进入一个“无限循环”,异常说“发送后不能设置标头。”;即使我做了var reqBody = request.body;
,然后写了response.write(reqBody)
,这也是正确的。
这里的问题是什么?
另外,我能得到原始请求而不使用express.bodyParser()
吗?