У меня есть интеграция Lambda прокси с API-шлюзом, которая работает нормально.
CORS обрабатывается непосредственно в лямбда-коде с проверкой списков авторизованных доменов.
Но проблема теперь в непредвиденных ошибках во время выполнения лямбды.
В этом случае API-шлюз возвращает следующее сообщение:
{
message: "Internal server error"
}
с 502
кодом статуса HTTP. К сожалению для меня, в этом ответе отсутствует заголовок Access-Control-Allow-Origin
, что вызывает ошибки на стороне клиента.
То же самое происходит, например, с таймаутами. Тогда код состояния HTTP равен 504
, но содержание ответа и отсутствие Access-Control-Allow-Origin
совпадают.
Та же проблема возникает и в случае проблемы с разрешениями: если у шлюза API нет достаточных разрешений для вызова Lambda, то возвращается ошибка 500
, но, опять же, без заголовка.
Фиксированное значение '*'
будет в порядке в случае лямбда-ошибок, но как и где это можно настроить?