Я пытаюсь запустить следующую функцию, которая выполняет request.get для массива URL-адресов, а затем записывает в массив, вся операция должна быть синхронной.Но мой код не является синхронным и выводит каждый раз разные выходные данные:
var arrayPart = [];
fileDecode : async function(fileName,filePath){
for (a=0; a< arr.length; a++){
var partID = JSON.parse(arr[a].id)
var uri = listID[remainder]+'/download/'+'?id='+partID
await request.get(uri, this.onRequestDone);
}
onRequestDone: async function(err, resp, body){
await new Promise(function (resolve, reject) {
if(err){
reject(err)
}else{
const buf = Buffer.from(body)
console.log("buf", buf)
arrayPart.push(buf);
fs.writeFileSync('message.txt', arrayPart)
resolve(body)
}
});
}
}
Моя функция onRequestDone работает неправильно и печатает бафф по-разному.