AWS Api Gateway, интегрированный с S3 - PullRequest
0 голосов
/ 04 мая 2020

Я пытаюсь создать приложение ReactJS для рендеринга на стороне сервера с AWS, и мне нужно сопоставить некоторые URL-адреса с S3. например: / assets

В Api Gateway я создал прокси-ресурс и интегрировал его с сервисами Amazon, выбрал S3 и связанную с ним роль и прямо сейчас просыпаюсь, находя при тестировании его панель

но

При развертывании его на этапах и проверке журналов в CloudWatch ниже точно отображается ошибка.

Выполнение не выполнено из-за ошибки конфигурации: Невозможно base64 декодировать тело .

enter image description here

Есть предложения?

1 Ответ

0 голосов
/ 05 мая 2020

Я нашел решение.

Когда вы устанавливаете Бинарные типы носителей , вы должны сначала добавить * / *, а затем необходимый Content-Type. s, такие как text / html и application / json.

Также, если вы используете Lambda для использования React SSR, вам нужно определить BinaryTypes в awsServerless Express, например ниже:

const binaryMimeTypes = [
'application/json',
'text/html',
 ];
 const server = awsServerlessExpress.createServer(app,null,binaryMimeTypes);
 exports.handler = (event, context) => awsServerlessExpress.proxy(server, event, context)
...