Я просто пытаюсь использовать потоки в узле, чтобы получить данные с сервера, после этого проанализировать JSON из них и отправить его как formData на другой сервер.
// declare JSONStream
const stream = JSONStream.parse(['records']);
let header = {};
stream.on('header', function (data) {
console.log('header:', data);
header = data;
});
stream.on('data', (data) => {
return data;
});
... После этого я делаю запрос данных
res = Request.get(result_url);
res.pipe(stream);
res.pause();
res.on('end', () => console.log('finished'));
... И после этого я пытаюсь отправить поток res на другой сервер
const sendRequest = {
uri: url,
method: 'POST',
headers: {
'Content-Type': 'application/json'
},
formData: {
file: fileStream,
},
resolveWithFullResponse: true,
simple: false
};
let response = await Request(sendRequest);
И поток запускается (я добавил несколько console.logs) после последнего запроса отправлено, но код останавливается в ожидании. Так что мой запрос не заканчивается sh.
Если я изменю файл в запросе на fs.createReadStream (), все будет хорошо.
Что я должен сделать, чтобы исправить мою проблему?