Node.js
Node.jsでのPOSTリクエストの処理
サーチ…
備考
Node.jsはストリームを使用して着信データを処理します。
ドキュメントから引用すると、
ストリームは、Node.jsのストリーミングデータを操作するための抽象的なインターフェイスです。ストリームモジュールは、ストリームインターフェイスを実装するオブジェクトを簡単に構築できる基本APIを提供します。
POST要求の要求本体で処理するには、読み取り可能なストリームであるrequest
オブジェクトを使用します。データストリームは、 request
オブジェクト上のdata
イベントとして発行されます。
request.on('data', chunk => {
buffer += chunk;
});
request.on('end', () => {
// POST request body is now available as `buffer`
});
単純に空のバッファ文字列を作成し、 data
イベントを介して受信したバッファデータを追加します。
注意
-
data
イベントで受信されたバッファデータのタイプはBufferです - 要求ごとにデータイベントからバッファリングされたデータを収集するための新しいバッファ文字列を作成します。つまり、要求ハンドラ内に
buffer
文字列を作成します。
POSTリクエストを処理するnode.jsサーバのサンプル
'use strict';
const http = require('http');
const PORT = 8080;
const server = http.createServer((request, response) => {
let buffer = '';
request.on('data', chunk => {
buffer += chunk;
});
request.on('end', () => {
const responseString = `Received string ${buffer}`;
console.log(`Responding with: ${responseString}`);
response.writeHead(200, "Content-Type: text/plain");
response.end(responseString);
});
}).listen(PORT, () => {
console.log(`Listening on ${PORT}`);
});
Modified text is an extract of the original Stack Overflow Documentation
ライセンスを受けた CC BY-SA 3.0
所属していない Stack Overflow