Я загружаю порцию файла (размер порции 600) с 10 серверов. Как я могу изменить приведенный ниже код для потокового ответа, например, чтобы он считывал 60 байтов из ответа первого сервера, затем 60 байтовот ответа второго сервера, и продолжайте до тех пор, пока я не получу 10. Я хочу потоковую линию этого процесса.
прямо сейчас мой код берет 600 байтов с первого сервера и помещает в файл, а затем берет следующие 600 байтов и добавлений и так далее, но я хочу получить первые 600 байтов, но только для чтения сначала 60, затем извторой ответ сервера читал 60 байтов и так далее.
for (a=0; a< array.length; a++){
var remainder = a%4
var uri = urls[remainder]+'/v1/file/download/'+'?path='+filePath
console.log(uri)
if ( a== partNum){
if( a==10 && partNum ==10){
break;
}
await new Promise(function (resolve, reject) {
request.get(uri
, function (error, response, body) {
}
)
.on('data', function(data,error) {
if (error){
reject(error)
} else {
console.log('decoded chunk: ',data.length)
}
// decompressed data as it is received
})
.on('response', function(response) {
// unmodified http.IncomingMessage object
response.on('data', function(data) {
// compressed data as it is received
console.log('received ' + data.length + ' bytes of compressed data')
})
});
});
} else {
console.log("handle error case")
}
}