Я загружаю одно изображение (upload.single ('file') - это промежуточное ПО Multer.), Платформа Koa для nodeJs.Все работает на локальном хосте, но не в среде prod.Вот путь к среде Prod. введите описание изображения здесь
Конверт продукта: Cliet-> Api gateway-> NLB -> сервис для корзины S3.
localhost env: Cliet-> служба для корзины S3.
Проблема заключается в том, что размер изображения увеличивается, когда он достигает службы до загрузки в корзину S3, и изображение будет искаженным (237 КБ увеличивается до 418 КБ),Но с использованием localhost все работает нормально.Я использовал почтальон в качестве клиента для загрузки изображения.
async create(ctx: Context, values: any): Promise<any> {
// The image size increased before sending to S3 bucket
console.log('REQUEST----', values.file)
const params = {
Bucket: env.Bucket,
Key: `images/${values.file.originalname}`,
Body: values.file.buffer,
ACL: 'public-read',
ContentType: values.file.mimetype,
ContentLength: values.file.size,
}
try {
const data = await s3.putObject(params).promise();
console.log('Successfully uploaded file.', data);
return true;
} catch(e) {
ctx.throw(HttpStatusCodes.InternalServerError, {
message: `Something went wrong when updating advertisement` + e,
});
}
}