У меня есть лямбда-функция в AWS, которая подключена к методу POST, который в основном берет URL-адрес изображения и загружает изображение в корзину S3.
Моя лямбда-функция выглядит следующим образом:
var s3 = new AWS.S3();
exports.handler = (event, context, callback) => {
let encodedImage = JSON.parse(event.body).user_avatar;
let decodedImage = Buffer.from(encodedImage, 'base64');
var filePath = "avatars/" + event.queryStringParameters.username + ".jpg"
var params = {
"Body": decodedImage,
"Bucket": "MYBUCKETNAME.com",
"Key": filePath
};
s3.upload(params, function (err, data) {
if (err) {
callback(err, null);
} else {
let response = {
"statusCode": 200,
"headers": {
"my_header": "my_value"
},
"body": JSON.stringify(data),
"isBase64Encoded": false
};
callback(null, response);
}
});
};
Кажется, что изображение загружается в указанное место, но при просмотре изображения оно кажется поврежденным.
Я очень неопытен в использовании AWS для всего, что они предоставляют за пределами графического интерфейса.Если кто-нибудь знает, что может происходить, я буду признателен за любую помощь.Заранее спасибо!