Я пытаюсь загрузить изображения из aws s3, используя AWS-SDK для nodejs.
Файл действительно загружается, и размер также правильный. Однако файл поврежден и показывает ошибку распаковки в IDAT.
async download(accessKeyId, secretAccessKey, region, bucketName, baseImage) {
console.log("Entered download");
const s3 = new AWS.S3({region: region});
const params = {
Bucket: bucketName,
Key: `base/${baseImage}`
};
const outStream = fs.createWriteStream(this.config.baseFolder + baseImage);
const awsStream = s3.getObject(params, (uerr, data) => {
if(uerr) throw uerr;
console.log(`Base file downloaded successfully!`)
}).createReadStream().pipe(outStream);
awsStream.on('end', function() {
console.log("successfully Downloaded");
}).on('error', function() {
console.log("Some error occured while downloading");
});
}
Вот ссылка, по которой я перешел - https://docs.aws.amazon.com/sdk-for-javascript/v2/developer-guide/requests-using-stream-objects.html
Файл должен быть загружен без ошибок. Я попытался выполнить поиск в стеке, и есть некоторые похожие вопросы, однако они используют nodejs для доставки вывода во внешний интерфейс, и эти решения не работают для меня.