Создание API с помощью Amazon API Gateway
Развёртывание приложений на AWS
Dunieski Otano
Amazon Web Services Solutions Architect
Три клиента, один бэкенд
Веб, мобильный клиент и партнёр обращаются к одному бэкенду
Каждый использует немного другой формат
Единая точка входа проверяет и преобразует каждый запрос
Что делает API Gateway
Полностью управляемая точка входа
для ваших API
Обрабатывает маршрутизацию, аутентификацию, ограничение запросов и трансформацию
Располагается между клиентами и
бэкендом
Бэкенды: Lambda, HTTP-эндпоинты или сервисы AWS
Типы интеграции
Lambda proxy
: передаёт весь запрос в Lambda
Lambda non-proxy
: вы задаёте маппинг полей запроса и ответа
HTTP
: перенаправляет запрос на HTTP-бэкенд
MOCK
: возвращает ответ без обращения к бэкенду
Трансформация запросов и ответов
Шаблоны маппинга
преобразуют полезные нагрузки с помощью VTL
Velocity Template Language трансформирует тело, заголовки и параметры
Маппинг запроса
: формат клиента → формат бэкенда
Маппинг ответа
: формат бэкенда → формат клиента
Валидация запросов
Отклоняйте некорректные данные
до
их попадания на бэкенд
Обязательные параметры
: заголовки, строки запроса, пути
Схемы моделей
: проверяют структуру JSON-тела
Валидация тела, параметров или обоих сразу
Коды статусов и контракты ошибок
Переопределяйте коды статусов бэкенда для
единого контракта
Замените код 502 от бэкенда на понятный клиенту код 503
Gateway responses
: настройка тела сообщений об ошибках
Клиенты получают предсказуемые ошибки независимо от бэкенда
Всё вместе
Запрос клиента →
валидация
→ трансформация → бэкенд
Некорректные данные отклоняются на входе
Корректные данные преобразуются для бэкенда
Ответ бэкенда форматируется в клиентский контракт
Давайте потренируемся!
Развёртывание приложений на AWS
Preparing Video For Download...