2016-12-27 2 views
0

Я пытаюсь реализовать несколько уже существующих API. Предположим, у меня есть приложение, запущенное на сервере сказатьAWS API Gateway proxy endpoint

192.168.0.1:8036

. Она имеет различные маршруты, как

http://192.168.0.1:8036/api/sample/a1?name=swas&class=tty 
http://192.168.0.1:8036/api/samp/a2?addr=swas&roll=tty 

Есть обычай доменное имя сказать

api.example.com

Так вот я хочу, чтобы направлять все запросы через AWS Gateway. Наконец запрос будет как

запрос

http://api.example.com/api/samp/a2?addr=swas&roll=tty

будет принят в качестве

http://192.168.0.1:8036/api/samp/a2?addr=swas&roll=tty

Примечания: Там может быть несколько трасс с различным динамическим параметром

В коротком каждом запросе, который приходит к api.example.com/* должны быть пропущено через AWS шлюз 192.168.0.1:8036/*

+1

И ваш вопрос ... как это сделать? Что вы используете на api.example.com? Nginx? Apache? HAProxy? ELB? ALB? CloudFront? –

+0

@ Michael-sqlbot да, как это сделать? Я запускаю Nginx –

+0

Нам нужно уточнить этот вопрос, потому что я изначально прочитал его ... назад. Я думал, что вы хотите Nginx → API Gateway, но теперь я думаю, что вам нужен API-шлюз → Nginx. API-шлюз не может получить доступ к приватному адресному пространству, используя режим HTTP-прокси-сервера. Ваш сервер Nginx должен быть доступен из Интернета для шлюза API для доступа к нему, если это то, что вы хотите. Но вы можете защитить свою конечную точку доступа к Интернету, настроив Gateway API на [аутентифицировать себя] (http: //docs.aws.amazon.ком/apigateway/последний/developerguide/получение стартер-клиент-бок SSL-authentication.html). –

ответ

1

Это звучит как прямое использование http-прокси с пользовательским доменным именем.

Документация по настройке HTTP прокси-сервер является here

документации для создания пользовательских доменных имен является here

Из вашего описания использования случае, вы хотите, чтобы имя пользовательского домена настройки, без базы путь, чтобы он указывал на один API. Вы также захотите указать этап в сопоставлении базового пути, чтобы вызывающий не мог его предоставить.

+0

Спасибо, это то, что я хотел. –

0

AWS API Getway имеет ограничение на один пользовательский домен на один REST API. Не уверен, в чем вопрос, но вы можете сопоставить несколько базовых путей, которые вам придется определять вручную. double check here

Смежные вопросы