Поделиться через


Импорт приложения контейнера Azure в качестве API

ОБЛАСТЬ ПРИМЕНЕНИЯ: все уровни управления API

В этой статье описывается, как импортировать приложение контейнера Azure в Службу управления API Azure в качестве API и проверить импортированный API с помощью портала Azure.

Примечание.

В настоящее время эта функция недоступна в рабочих областях.

В этой статье вы узнаете, как:

  • Импорт приложения-контейнера, предоставляющего веб-API
  • проверка API на портале Azure;

Предоставление приложения-контейнера с помощью управления API

Контейнеры приложений Azure позволяет развертывать контейнерные приложения без управления сложной инфраструктурой. Разработчики API могут писать код с помощью предпочитаемого языка программирования или платформы, создавать микрослужбы с полной поддержкой распределенной среды выполнения приложений (Dapr) и масштабироваться на основе HTTP-трафика или других событий.

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

  • Отделить управление и защиту фронтенда, доступного для потребителей API, от управления и мониторинга серверного веб-API.
  • Управление веб-API, размещенными в качестве приложений-контейнеров в той же среде, что и другие API.
  • Применение политик для изменения поведения API, например ограничения частоты вызовов.
  • Направьте пользователей API на настраиваемый портал разработчика управления API, чтобы они могли открывать и изучать ваши API, запрашивать доступ и тестировать API.

Дополнительные сведения см. в статье Сведения об Управлении API.

Спецификация OpenAPI и операции с подстановочными знаками

Управление API поддерживает импорт приложений-контейнеров, которые предоставляют спецификацию OpenAPI (определение Swagger). Спецификация OpenAPI не требуется, но рекомендуется предоставить ее. Управление API может импортировать отдельные операции, что позволяет проверять, управлять, защищать и обновлять конфигурации для каждой операции отдельно.

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

  • Конфигурация приложения контейнера
  • /openapi.json
  • /openapi.yml
  • /swagger/v1/swagger.json

Если спецификация OpenAPI не предоставлена, Управление API создает операции с подстановочными знаками для типичных HTTP-команд (GET, PUT и т. п.). Вы можете по-прежнему использовать те же возможности Управления API, но операции не определены с той же степенью детализации.

В любом случае можно изменить или добавить операции в API после импорта.

Пример

Серверное приложение-контейнер может поддерживать две операции GET:

  • https://<app-service>.azurewebsites.net/customer/{id}
  • https://<app-service>.azurewebsites.net/customers

Контейнерное приложение импортируется в службу управления API по пути, например https://<api>.azure-api.net/store. В приведенной ниже таблице перечислены операции, которые импортируются в Управление API при наличии и при отсутствии спецификации OpenAPI.

Тип Импортируемые операции Примеры запросов
Спецификация OpenAPI GET /customer/{id}

GET /customers
GET https://<api>.azure-api.net/store/customer/1

GET https://<api>.azure-api.net/store/customers
Подстановочный знак GET /* GET https://contosoapi.azure-api.net/store/customer/1

GET https://<api>.azure-api.net/store/customers

Операция с использованием подстановочных знаков позволяет отправлять в службу серверной части такие же запросы, как и операции в спецификации OpenAPI. Но операциями, определенными через OpenAPI, вы можете управлять в службе "Управление API" раздельно.

Предварительные условия

Импорт и публикация API серверной части

  1. Перейдите к службе управления API на портале Azure и выберите API-интерфейсы> в левой области.

  2. В разделе "Создание из ресурса Azure" выберите "Приложение контейнера":

    Снимок экрана, показывающий элемент интерфейса

  3. Выберите "Обзор" , чтобы просмотреть список приложений-контейнеров в подписке.

  4. Выберите приложение-контейнер. Если определение OpenAPI связано с выбранным приложением контейнера, управление API извлекает его и импортирует. Если определения OpenAPI в нем нет, Управление API будет использовать для предоставления этого API операции с подстановочными знаками для самых распространенных HTTP-команд.

  5. Добавьте суффикс URL-адреса API. Суффикс — это имя, определяющее API в экземпляре управления API. Он должен быть уникальным в экземпляре управления API.

  6. Свяжите API с продуктом. Нажмите кнопку "Полный ", а затем в разделе "Продукт" выберите продукт. В этом случае используется неограниченный продукт. Если вы хотите, чтобы API был опубликован и доступен разработчикам, необходимо добавить его в продукт.

    Примечание.

    Продукты — это связи одного или нескольких API. Можно включать множество API и предлагать их разработчикам через портал разработчика. Чтобы получить доступ к API, разработчикам необходимо сначала подписаться на продукт. Когда они подписываются, они получают ключ подписки, который хорошо подходит для любого API в этом продукте. Создавая экземпляр Управления API, вы автоматически становитесь его администратором. Поэтому вы по умолчанию будете подписаны на все соответствующие продукты.

    В некоторых ценовых категориях экземпляр API Management поставляется с двумя образцами продуктов во время создания.

    • Starter
    • Unlimited
  7. Введите другие параметры API. Эти значения можно задать при создании API или настроить их позже на вкладке "Параметры ". Эти параметры описаны в руководстве по импорту и публикации первого руководства по API .

  8. Нажмите кнопку создания.

    Снимок экрана: окно

Проверка нового API на портале Azure

Операции можно вызывать непосредственно на портале Azure. Этот метод является удобным способом просмотра и тестирования операций API. Вы также можете протестировать API на портале разработчика или с помощью собственных клиентских средств REST.

Чтобы протестировать API на портале Azure, выполните следующие действия.

  1. Выберите API, созданный на предыдущем шаге.

  2. Откройте вкладку Тест.

  3. Выберите операцию.

    На странице отобразятся поля для параметров запроса и для заголовков. Одним из заголовков является Ocp-Apim-Subscription-Key. Этот заголовок предназначен для ключа подписки продукта, связанного с API. Если вы создали экземпляр службы управления API, вы являетесь администратором, поэтому ключ заполняется автоматически.

  4. Выберите Отправить.

    Если тест пройдет успешно, приложение серверной части передаст код ответа 200 — OK и некоторые данные.

Тестирование операций с подстановочными знаками на портале

Когда создаются операции с подстановочными знаками, они могут не сопоставляться напрямую с API серверной части. Например, в импортированных через Управление API операциях GET с подстановочными знаками по умолчанию используется путь /. Однако ваш бэкенд API может поддерживать операцию GET по следующему пути:

/api/TodoItems

Чтобы проверить /api/TodoItems путь, выполните следующие действия.

  1. Выберите созданный API и выберите операцию.

  2. Откройте вкладку Тест.

  3. В разделе Параметры шаблона измените значение рядом с именем подстановочного знака (*). Например, введите api/TodoItems. Это значение присоединяется к пути / для операции с подстановочным знаком.

    Скриншот, показывающий шаги по тестированию использования подстановочных знаков.

  4. Выберите Отправить.

Добавить другие API

Вы можете создавать API из API, предоставляемых различными службами, в том числе:

  • Спецификация OpenAPI
  • A SOAP API
  • A GraphQL API
  • Веб-приложение, размещенное в службе приложений Azure
  • Функции Azure
  • Приложения логики Azure
  • Azure Service Fabric

Примечание.

При импорте API операции добавляются к текущему API.

Чтобы добавить API к существующему API, выполните следующие действия.

  1. Перейдите к инстансу службы Управление API Azure на портале Azure.

    снимок экрана со страницей служб управления API.

  2. Выберите API на странице обзора или выберите API> в меню слева.

    снимок экрана, на котором показан выбор API на странице обзора.

  3. Выберите многоточие (...) рядом с API, к которому требуется добавить другой API.

  4. Выберите Импорт в раскрывающемся меню:

    снимок экрана, на котором показана команда импорта.

  5. Выберите службу, из которой следует импортировать API.