AWS API Gateway — настройка CORS для определенных доменов и этапов

Я пытаюсь добиться действительно простой вещи на AWS API Gateway: установить заголовки cors для определенных доменов. Если я использую любой веб-сервер, такой как Nginx, Apache, я могу легко установить заголовок CORS на основе домена, например:

Если запрос пришел из домена A или домена B, я установлю заголовки CORS, иначе нет.

Шлюз AWS API позволяет установить только один access-control-allow-origin.

Но доступ к моему API будет осуществляться более чем одним доменом, поэтому заголовок CORS должен устанавливаться динамически на основе HTTP-запроса хоста.

Есть ли способ добиться этого без использования какого-либо внешнего кода в качестве лямбда-функций и т. д.?

Мои заголовки CORS также будут зависеть от этапа. На разных этапах будут разные заголовки CORS.

Кто-нибудь знает, возможно ли это сделать с помощью шлюза API?


person Lucas Santos    schedule 07.10.2019    source источник
comment
Я считаю, что сама спецификация CORS не допускает нескольких доменов. Единственный выход - использовать лямбда-функцию.   -  person Amit Naik    schedule 07.10.2019
comment
Привет, Амик! Точно, я это знаю. Используя такие серверы, как Nginx, apache, мы можем написать пользовательскую функцию для проверки домена источника, а затем установить CORS, если источник соответствует нашему пользовательскому домену (действительно, мы не можем добавить несколько доменов на Cors в заголовок http). Мне просто интересно, можно ли проделать этот трюк без вызова лямбда-функции, но это звучит невозможно. Спасибо за Ваш ответ!   -  person Lucas Santos    schedule 07.10.2019
comment
stackoverflow.com/questions/39628640/ Похоже, что без лямбды это невозможно. Я просто поставлю это здесь на случай, если кто-то еще задаст этот вопрос.   -  person qkhanhpro    schedule 07.10.2019