次の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は「最初の引数は文字列またはバッファである必要があります」という例外をスローし、「送信後にヘッダーを設定できない」という例外を伴って「無限ループ」に進みます。これは私がvar reqBody = request.body;
書いてから書いても同じresponse.write(reqBody)
です。
ここの問題は何ですか?
また、使用せずにそのままのリクエストを取得できexpress.bodyParser()
ますか?
response.write(reqBody)
です。私が使用するときresponse.send(reqBody)
は問題なく動作しています...そしてはい、私はresponse.end
後に使用しresponse.write
ます。