Я использую node-stream-zip , чтобы распаковать файл. Когда я запускаю это синхронно (как документация), это работает отлично. Однако я пытаюсь обещать это и сталкиваюсь с проблемами. Нет вывода из метода asyn c (скрипт только что закончился). Может кто-нибудь сказать мне, почему это возвращает без ошибок и без результата асинхронно?
//for unzipping via stream
const StreamZip = require("node-stream-zip"); //npm i node-stream-zip
const {promisify} = require('util');
const AsyncStreamZip=promisify(StreamZip);
const ppp ="C:\\Users\\king\\Postman\\files\\1491.zip";
function unzipDataSync(path){
console.log('---sync---')
let companyZip = new StreamZip({
file: path,storeEntries: true
});
// Handle errors
companyZip.on("error", e => {
console.log("Could not unzip "+path);
throw e;
});
//unzip logic after zipCompany is ready
companyZip.on("ready", () => {
for (const entry of Object.values(companyZip.entries())) {
console.log(JSON.stringify(entry));
}
});
}
async function unzipDataAsync(path){
console.log('---async---')
try{
let companyZip = await(new AsyncStreamZip({
file: path,storeEntries: true
}));
for (const entry of Object.values(companyZip.entries())) {
console.log(JSON.stringify(entry));
}
return;
}catch(e){
console.log("Could not unzip "+path);
return;
}
}
unzipDataAsync(ppp).then(()=>{})
unzipDataSync(ppp)