Сбой AWS API Gateway при вызове внутреннего API с использованием частного IP-адреса
Я создал публичный API, используя AWS API-шлюз с ресурсом cars
и GET
метод. У меня также есть бэкэнд API,/api/routing
, который размещен на экземпляре Windows EC2. Бэкэнд API принимает только POST
request и используется для маршрутизации запроса на основе некоторых значений заголовка.
В запросе интеграции у меня также есть настройка шаблона отображения, чтобы он мог POST данные в api/routing
Таким образом, запрос на интеграцию для cars
публичный API выглядит как ниже
Входящие правила для экземпляра EC2
вопрос
URL-адрес конечной точки использует частный ip экземпляра EC2. Когда я тестируюcars
API, я получаю ошибку
Execution failed due to configuration error: Invalid endpoint address
Если я изменяю URL-адрес конечной точки, чтобы использовать публичный IP-адрес, то он работает как положено
В конце концов, я хотел бы получить доступ к бэкэнд-API, используя private-ip. Экземпляр EC2 - это бесплатный экземпляр, созданный AWS.
Я понимаю, что если у меня есть VPC, то в API Gateway мне нужно настроить VPC Links, но я не создал ни одного VPC (если только AWS не создает его).
1 ответ
Нашел это. После создания ссылки VPC я все еще выбирал Integration Type
как HTTP
..так должно быть VPC Link