Публикация функций через API Gateway

Созданные на предыдущем этапе функции пока нельзя использовать, потому что правила, которые нужны для их запуска, не настроены. С помощью API Gateway функции можно опубликовать в виде веб-сервисов.

Чтобы опубликовать функцию в API Gateway:

  1. В списке сервисов выберите API Gateway.

  2. Нажмите Create API.

  3. В поле Name укажите название публикуемого API.

  4. В поле API Group выберите существующую API-группу или создайте новую. Все API, которые находятся внутри одной группы, доступны по одному доменному имени.

  5. В поле Security Authentication выберите None. С помощью этого параметра можно добавить аутентификацию на вызываемые API. На текущем этапе практической работы аутентификацию добавлять не нужно.

  6. Нажмите Next.

  7. В поле Protocol выберите HTTPS. API будет работать по защищенному протоколу.

  8. В поле Path введите путь, по которому будет публиковаться API. Он зависит от того, какую функцию вы публикуете:

    • при публикации GET и POST введите /pets;

    • при публикации DELETE введите /pets/{id}.

  9. В поле Matching выберите Exact match.

  10. В поле Method выберите метод, который соответствует публикуемой функции — GET, POST или DELETE.

  11. Активируйте параметр CORS.

  12. Опциональный шаг, необходимый только при публикации функции удаления записей о питомце — метод DELETE.

    Добавьте входной параметр — {id}. Для этого раскройте Input Paremeters и нажмите Add Input Parameter. Выполните настройки:

    • в поле Name введите id;

    • в поле Location выберите PATH;

    • в списке Type выберите NUMBER.

    Нажмите OK.

  13. Нажмите Next.

  14. На странице Define Backend Request нужно указать, куда именно API Gateway будет отправлять запросы. В практической работе запросы будут отправляться в FunctionGraph. Поэтому в поле Backend Type выберите FunctionGraph.

  15. В поле Function URN нажмите Select Function URN и выберите соответствующую публикуемому API функцию.

  16. Опциональный шаг, необходимый только при публикации функции удаления записей о питомце — метод DELETE.

    Добавьте бэкенд-параметр id. Для этого раскройте Backend Parameters и нажмите Add Backend Parameter Mapping. В поле Backend Parameter Location введите id.

  17. Нажмите Next.

  18. Нажмите Finish.

  19. Нажмите Publish API.

  20. Нажмите Publish.

Выполните инструкцию для каждой функции. Для каждой из них выберите нужный метод. В результате получится три функции, доступные по одному адресу.

Кроме основных API, добавьте два дополнительных. Они не не связаны с просмотром, добавлением или удалением записей. Дополнительные API будут вызываться браузером для Prefligh-запроса.

Параметры для дополнительных API

Параметр

Значение для API №1

Значение для API №2

Security Authentication

None

None

Protocol

HTTPS

HTTPS

Path

/pets

/pets/{id}

Method

OPTIONS

OPTIONS

CORS

Enabled

Enabled

Input Parameters

id — по аналогии с DELETE

Backend Type

Mock

Mock

Следующий шаг — тестирование API.

Запустили Evolution free tier
для Dev & Test
Получить