Я пытался загрузить поток файлов изображений (используя createReadStream) на сервер (используя Multer).
Я использую модуль запроса.
Когда отправляется запроспервый раз все отлично работает.Сервер получает поток, обрабатывает его и сохраняет его в файл.
Через несколько секунд (используя setTimeout) тот же файловый поток снова отправляется на сервер, но ни мультипер не запускается, ни клиент не получает никакихответ.Он продолжает ждать.
Я нашел этот поток файлов, когда поток используется.Но я установил для autoClose значение false.Все еще не повезло.
Я также попытался сохранить поток в буфере, а затем загрузить буфер на сервер, но Multer не смог его обработать, я получил пустой объект req.files.
Если вы можете помочь или дать мне направление, я буду признателен.Я пытался исправить это больше недели.
let formData = {};
formData.imageFile = fs.createReadStream('./file.jpg', { autoClose: false });
request.post({ url: config.uploadURL, formData }, (err, response, body) => {
if (err) {
return console.error('upload failed:', err);
}
console.log('Received response');
});
setTimeout(() => {
request.post({ url: config.uploadURL, formData}, (err, response, body) => {
if (err) {
return console.error('upload failed:', err);
}
console.log('Received response');
});
}, 10000);
Первый запрос работает отлично.Второго нет.