Size: a a a

NodeUA - JavaScript and Node.js in Ukraine

2021 August 14

DL

Daniil Loban in NodeUA - JavaScript and Node.js in Ukraine
т.е. данные в req.body ?
источник

AK

Alexandr Kazakov in NodeUA - JavaScript and Node.js in Ukraine
я вывел  console.log(req.body); выдает undefined
источник

DL

Daniil Loban in NodeUA - JavaScript and Node.js in Ukraine
поэтому и нет
источник

DL

Daniil Loban in NodeUA - JavaScript and Node.js in Ukraine
нужно убедится что данные долетают
источник

AK

Alexandr Kazakov in NodeUA - JavaScript and Node.js in Ukraine
Вот через постман я пытаюсь отправить такой json: https://bit.ly/3CPAJ3l
источник

AK

Alexandr Kazakov in NodeUA - JavaScript and Node.js in Ukraine
Данные долетают, ведь я их могу считать через буффер.
источник

AK

Alexandr Kazakov in NodeUA - JavaScript and Node.js in Ukraine
Я вот отчасти понимаю как работает этот буфер и стримы, но не до конца. Сейчас вот пытаюсь еще раз разобраться.
источник

DL

Daniil Loban in NodeUA - JavaScript and Node.js in Ukraine
как ?
источник

AK

Alexandr Kazakov in NodeUA - JavaScript and Node.js in Ukraine
Вот пример, там я ведь успешно беру тело запроса.
источник

DL

Daniil Loban in NodeUA - JavaScript and Node.js in Ukraine
const data = Buffer.concat(buffers).toString(); ?
источник

DL

Daniil Loban in NodeUA - JavaScript and Node.js in Ukraine
как-то странно вообще-то... не знаю откуда такой подход
источник

DL

Daniil Loban in NodeUA - JavaScript and Node.js in Ukraine
ну да ладно если считываешь, просто добавь поле body с данными перед отправкой и все
источник

AK

Alexandr Kazakov in NodeUA - JavaScript and Node.js in Ukraine
Я могу ошибаться, но это работает примерно так: тело запроса не передается целиком, а передается чанками, в каждом чанке данные в виде буфера. Вот и я значит жду все чанки, склеиваю их, а потом буфер перевожу в верный формат.
источник

H

Hesus in NodeUA - JavaScript and Node.js in Ukraine
http.createServer((request, response) => {
 let body = [];
 request.on('data', (chunk) => {
   body.push(chunk);
 }).on('end', () => {
   body = Buffer.concat(body).toString();
   response.end(body);
 });
}).listen(8080)
источник

AK

Alexandr Kazakov in NodeUA - JavaScript and Node.js in Ukraine
Только я не понимаю вот что: когда я делаю запрос к этому серверу, то в какой момент создается стрим и какой это стрим: readable,writable или transform.

Например если бы я там вместо простого json отправил медиа файл на 1гб, то что бы произошло...

Также непонятно, заголовки запроса также в стриме передаются или как....
источник

DL

Daniil Loban in NodeUA - JavaScript and Node.js in Ukraine
ну вот склеил потом всунул перед отправкой на клиента и весь секс)
источник

Y

Yevhen in NodeUA - JavaScript and Node.js in Ukraine
Такое пробовали?

request.pipe(response)
response.end()
источник

AK

Alexandr Kazakov in NodeUA - JavaScript and Node.js in Ukraine
Так, ну pipe я знаю, что применял в gulp. Сейчас попробую.
источник

Y

Yevhen in NodeUA - JavaScript and Node.js in Ukraine
Не буду спрашивать при чем тут gulp)
источник

DL

Daniil Loban in NodeUA - JavaScript and Node.js in Ukraine
угу запутать новичка может каждый, а вот распутать))
источник