У меня есть API, созданный с NodeJS, в этом API есть процесс, в котором я загружаю большой файл с помощью модуля request-обещания, а затем создается новый буфер, загружаемый в minio. Но у меня проблема в том, что мой API всегда дает сбой, если файл превышает 80-100 МБ и его NodeJS уничтожено на сервере, как его обработать?
Эта функция предназначена для загрузки файла и его преобразования в буфер:
const convertLink = async link => {
const options = {
uri: link,
encoding: null,
headers: {
'Content-type': 'application/octet-stream'
}
};
const res = rp.get(options)
.then((body) => {
console.log(body)
const a = new Buffer.from(body);
return a;
})
.catch(err => {
console.log(err)
return err;
});
return res;
};
это функция для загрузки файлов в Minio из miniosdk:
const streamUpload = async (bucketName, objectName, newBuffer) => {
try {
const isUploaded = await minioClient.putObject(bucketName, objectName, newBuffer);
if (isUploaded) {
return isUploaded;
}
} catch (err) {
return err;
}
};