Настройка API Gateway

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

В этой инструкции описаны настройки API Gateway и прикрепление SSL-сертификата для дальнейшей работы с ботом Telegram.

Создание API Gateway Group

  1. В меню консоли Advanced перейдите в раздел Application → API Gateway.

  2. В правом боковом меню выберите Shared Gateways.

  3. Выберите API Publishing → API Groups.

  4. Нажмите Create API Group.

  5. Заполните следующие поля:

    • Name — укажите название группы.

    • Description (опционально) — введите описание.

  6. Нажмите ОК.

Прикрепление доменного имени к группе

Прежде чем опубликовать API, к принадлежащей ему группе нужно прикрепить один или несколько внешних доменов (до пяти штук). Если доменные имена не привязаны к группе, то API-запрос будет вызываться с использованием технического поддомена и количество вызовов будет ограничено до 1000 в день.

  1. Выберите Application → API Gateway.

  2. В правом боковом меню выберите Shared Gateways.

  3. Выберите API Publishing → API Groups.

  4. В строке с нужной группой нажмите More → Manage Domain Name.

  5. Нажмите Bind Independent Domain Name.

    Внимание

    В доменном имени должна быть CNAME-запись с именем поддомена группы API. Для этого перейдите на API Group → вкладка Summary и скопируйте имя поддомена в поле Subdomain Name.

  6. Введите в поле доменное имя в формате www.example.com и нажмите OK.

После успешного добавления доменного имени появится новая запись.

Прикрепление SSL-сертификата

  1. Выберите Application → API Gateway.

  2. Выберите API Publishing → API Groups.

  3. В строке с нужной группой нажмите More → Manage Domain Name.

  4. В строке с нужным доменом нажмите Add SSL Certificate.

  5. Заполните поля:

    1. Certificate Name — укажите название сертификата.

    2. Certificate Content — введите запрос (публичный ключ) сертификата.

    3. Private Key — введите приватный ключ вашего сертификата.

  6. Нажмите ОК.

Создание API

  1. Выберите Application → API Gateway.

  2. Выберите API Publishing → API Groups.

  3. В строке с нужной группой нажмите Manage API.

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

  5. Заполните следующие параметры:

    1. Name — укажите название API.

    2. API Group — выберите из списка ранее созданную группу.

    3. Gateway Response — оставьте ответ по умолчанию.

    4. Security AuthenticationNone. В нашем примере проверка подлинности не нужна.

  6. Нажмите Next.

  7. Заполните поля на странице Define API Request:

    1. Protocol — выберите протокол, который будете использовать для API-вызовов. В нашем примере это HTTP& HTTPS.

    2. Path — укажите путь для запроса API. Например, «/bot».

    3. Matching — выберите:

      • Exact match, чтобы перенаправлять API-запросы точно по указанному пути.

      • Prefix match, чтобы перенаправлять API-запросы по пути, который начинается с указанных в поле значений.

    4. Method — выберите метод API GET или POST.

    5. CORS — по умолчанию (отключен).

  8. Нажмите Next.

  9. Заполните поля на странице Define Backend Request:

    1. Backend Type — выберите FunctionGraph.

    2. Function URN — нажмите на Select Function URN и выберите из списка ранее созданную функцию в сервисе FunctionGraph, нажмите ОК.

    3. VersionLATEST.

    4. Invocation Mode — выберите режим вызова функции Synchronous (синхронный).

    5. Timeout — укажите длительность времени ожидания. Диапазон: 1–60 000 мс, значение по умолчанию — 5000 мс. Если во время отладки API возникает ошибка времени ожидания бэкенда, то можно увеличить это значение.

  10. Нажмите Next и затем Finish.

Теперь простой бот для приложения Telegram создан и размещен в облаке с помощью бессерверной функции.

Обычно для запуска такого бота нужно написать код не в виде простого скрипта, а в рамках микросервисной среды, такой как Flask. Для этого нужны веб-сервер для обслуживания кода, SSL-сертификат для обеспечения безопасности соединения и прочее. Но благодаря сервисам облака Advanced FunctionGraph и API Gateway решение этой задачи стало значительно проще.

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