Необходимо вернуть объект после загрузки и извлечения архива.
Пример кода:
return rp(distantFile)
.pipe(fs.createWriteStream("./temp/" + zipName))
.on('close', async function () {
console.log('File written!');
try {
// Extraction
await extract("./temp/" + zipName,
{ dir: "./public/subs/" + name },
async function (err) {
// extraction is complete. make sure to handle the err
if (err) console.log(err)
console.log("Extraction done!");
// Remove .zip in /temp once extracted
await rimraf('./temp/' + zipName,
{ disableGlob: true },
function(){
/* do nothing */
});
const movieSubs = {
language: lang,
directory: "/subs/" + name + "/" + name + '.vtt'
};
return movieSubs;
})
}
catch(ex) {
console.log(err)
}
})
При console.log(movieSubs)
, он показывает мне объект потока со множеством свойств.Похоже, что writeStream еще не закрыт.
Предпочел бы сделать это с помощью axios, но понятия не имею, как.