Поиск…


замечания

Node.js использует потоки для обработки входящих данных.

Цитируя из документов,

Поток представляет собой абстрактный интерфейс для работы с потоковыми данными в Node.js. Модуль потока предоставляет базовый API, который упрощает сбор объектов, реализующих интерфейс потока.

Чтобы обрабатывать запрос в запросе POST, используйте объект request , который является читаемым потоком. Потоки данных испускаются как события data в объекте request .

  request.on('data', chunk => {
    buffer += chunk;
  });
  request.on('end', () => {
    // POST request body is now available as `buffer`
  });

Просто создайте пустую строку буфера и добавьте данные буфера, полученные по событиям data .

НОТА

  1. Буферные данные, полученные в событиях data имеют тип Buffer
  2. Создайте новую строку буфера для сбора буферизованных данных из событий данных для каждого запроса, т. Е. Создайте buffer строку внутри обработчика запроса.

Пример node.js-сервера, который просто обрабатывает запросы POST

'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