Вы можете использовать опцию axios и API Gateway isBase64Encoded
.
Сначала запросите изображение и конвертируйте его в base64, используя Buffer:
const imageBase64 = await axios.get(url, {responseType: 'arraybuffer'})
.then(response => Buffer.from(response.data, 'binary').toString('base64'));
Далее верните его из лямбды через API-шлюз:
return {
statusCode: 200,
body: imageBase64,
isBase64Encoded: true, //the most important part
}
Однако имейте в виду, что API-шлюз допускает до 10 мегабайт полезной нагрузки. Вы получите ошибку, если ваши изображения больше.