サーチ…


備考

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イベントを介して受信したバッファデータを追加します。

注意

  1. dataイベントで受信されたバッファデータのタイプはBufferです
  2. 要求ごとにデータイベントからバッファリングされたデータを収集するための新しいバッファ文字列を作成します。つまり、要求ハンドラ内に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