Примечание.
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
ПРИМЕНИМО К: все уровни API Management
В этом руководстве показано, как импортировать внутренний API спецификации OpenAPI в формате JSON в Azure API Management. В этом примере импортируется API открытый код Petstore.
Совет
Команды API могут использовать эту функцию в рабочих областях. Рабочие области предоставляют изолированный административный доступ к API и собственные среды выполнения API.
При импорте серверного API в API Management api API Management становится шлюзом для внутреннего API. Шлюз можно настроить в соответствии с вашими потребностями в API Management, не изменив внутренний API. Дополнительные сведения см. в статье Transform and protect your API (Преобразование и защита API).
В этом руководстве описано следующее:
- Импорт API в API Management
- Просмотр и изменение параметров API
- Тестирование API в Azure portal
- Маршрутизация запросов API через API Management
После импорта API можно управлять в Azure portal.
Предварительные условия
- Общие сведения о терминологии Azure API Management.
- Создайте экземпляр Azure API Management.
Перейдите к вашей инстанции API Management
На портале Azure найдите и выберите службы управления API:
На странице служб API Management выберите экземпляр API Management:
Импорт и публикация API серверной части
В этом разделе показано, как импортировать и опубликовать серверный API по спецификации OpenAPI.
В экземпляре API Management в разделе APIs в меню боковой панели выберите APIs.
Выберите плитку OpenAPI.
В окне Создание из спецификации OpenAPI выберите Полный.
Введите значения из следующей таблицы.
Можно задать значения API во время создания или позже, перейдя на вкладку Параметры.
Настройка значение Описание Спецификация OpenAPI https://petstore3.swagger.io/api/v3/openapi.json -Или- https://petstore.swagger.io/v2/swagger.json Указывает серверную службу, реализующую API, и операции, поддерживаемые API.
URL-адрес серверной службы появится позже в качестве URL-адреса веб-службы на странице Параметры API.
После импорта можно добавить, изменить, переименовать или удалить операции в спецификации.Включение параметров запроса в шаблоны операций Установлен (по умолчанию) Указывает, следует ли импортировать необходимые параметры запроса в спецификацию в качестве параметров шаблона в API Management. Отображаемое имя После ввода URL-адреса спецификации OpenAPI API Management заполняет это поле на основе JSON. Это имя отображается на портале разработчика. Имя После ввода URL-адреса спецификации OpenAPI API Management заполняет это поле на основе JSON. Уникальное имя для API. Description После ввода URL-адреса спецификации OpenAPI API Management заполняет это поле на основе JSON. Необязательное описание API. Схема URL-адресов HTTPS Какие протоколы могут получить доступ к API. Суффикс URL-адреса API petstore Суффикс, добавленный к базовому URL-адресу службы API Management. Управление API различает и направляет API по суффиксам, поэтому суффикс должен быть уникальным для каждого API у заданного издателя. Узнайте больше о том, как API Management направляет запросы. Теги Теги для упорядочивания API для поиска, группирования или фильтрации. Товары Unlimited Ассоциация одного или нескольких API. В некоторых уровнях экземпляр API Management поставляется с двумя примерами продуктов: Starter и Unlimited. Вы публикуете API на портале разработчика, связав API с продуктом.
Вы можете включить несколько API в продукт и предложить подписки на продукты разработчикам на портале разработчиков. Чтобы добавить этот API в другой продукт, введите или выберите название продукта. Повторите этот шаг, чтобы добавить API в несколько продуктов. Вы также можете добавить API в продукты позже на странице Параметры.
Дополнительные сведения о продуктах см. в статье Создание и публикация продукта.Шлюзы Управляемый Шлюзы API, предоставляющие API. Это поле доступно только в службах уровня Разработка и Премиум.
Managed указывает шлюз, встроенный в службу API Management и размещенную корпорацией Майкрософт в Azure. Самостоятельно развёрнутые шлюзы доступны только в сервисах уровня "Разработчик" и "Премиум". Вы можете развернуть их локально или в других облаках.
Если вы не выбираете шлюзы, API недоступен, и запросы API не выполняются.Версия этого API Выберите или отмените выбор Дополнительные сведения см. в статье Публикация нескольких версий API. Щелкните Создать, чтобы создать API.
Если у вас возникли проблемы с импортом определения API, ознакомьтесь с ограничениями импорта API и известными проблемами.
Просмотр и изменение параметров API
После импорта API можно просмотреть и изменить его параметры и операции в Azure portal.
В экземпляре API Management в разделе APIs в меню боковой панели выберите APIs.
Выберите вкладку "Конструктор" , чтобы просмотреть и изменить операции API в спецификации OpenAPI, включая:
- Сведения об операциях, такие как URL-адрес, метод и описание
- Определения запросов и ответов
- Политики для изменения запросов и ответов
Перейдите на вкладку "Параметры" , чтобы просмотреть и изменить сведения о конфигурации API, в том числе:
- Отображаемое имя, имя и описание
- URL-адрес веб-службы (серверная служба), схема URL-адресов и суффикс URL-адреса API
- Продукты, теги и управление версиями
- Более сложные параметры, такие как требования к подписке, безопасность и мониторинг
По мере работы с API Management руководствами вы узнаете больше о настройке параметров API. Эти параметры можно обновить в любое время, чтобы настроить конфигурацию API.
Тестирование нового API в Azure portal
Операции API можно вызывать непосредственно из Azure portal, что обеспечивает удобный способ просмотра и тестирования операций. По умолчанию в тестовой консоли портала API вызываются с помощью ключа из встроенной универсальной подписки. Вы также можете протестировать вызовы API с помощью ключа подписки, ограниченного для продукта.
В экземпляре API Management выберите APIs>APIs>Swagger Petstore.
Выберите вкладку "Тест" и выберите " Найти домашних животных по состоянию". На странице показан параметр запроса статуса. Выберите одно из доступных значений, например ожидание. Здесь также можно добавить параметры запроса и заголовки.
В разделе HTTP-запроса заголовок Ocp-Apim-Subscription-Key заполняется автоматически, что вы можете увидеть, если нажмете на значок "глаз".
Выберите Отправить.
Бэкенд отвечает 200 OK и некоторыми данными.
Как API Management маршрутизирует запросы
API Management выступает в качестве шлюза между клиентами API и внутренними службами. Когда клиент выполняет запрос к API, управляемому API Management, маршрутизация следует следующему шаблону:
URL-адрес запроса клиента:
[API Management gateway URL] + [API URL suffix] + [Operation endpoint]
API Management перенаправляет запрос в серверную службу с помощью этого шаблона:
URL-адрес серверной службы:
[Web service URL] + [Operation endpoint]
Замечание
Конечная точка Operation должна быть одинаковой в определении API Management и в настройках серверного сервиса для правильной маршрутизации. Несоответствующие конечные точки операций приводят к ошибкам 404 или другим ошибкам маршрутизации.
В следующей таблице описан каждый параметр маршрутизации в контексте примера API Petstore, используемого в этом руководстве:
| Параметр | Описание | Пример (API Petstore) |
|---|---|---|
| URL-адрес шлюза управления API | Базовый URL-адрес экземпляра API Management | https://apim-hello-world.azure-api.net |
| Суффикс URL-адреса API | Уникальный суффикс, определяющий API в API Management (настроенный во время создания API) | petstore |
| URL-адрес веб-службы | Базовый URL-адрес серверной службы, производный от спецификации OpenAPI | https://petstore3.swagger.io/api/v3 |
| Конечная точка операции | Путь к определенной конечной точке операции (производный от спецификации API) | /pet/findByStatus |
Пример: поиск домашних животных по состоянию
Использование API Petstore, импортированного в этом руководстве:
Клиент вызывает API Management:
https://apim-hello-world.azure-api.net/petstore/pet/findByStatus?status=pending- URL-адрес шлюза API Management
https://apim-hello-world.azure-api.net - Суффикс URL-адреса API:
petstore - Конечная точка операции:
/pet/findByStatus
- URL-адрес шлюза API Management
Маршрутизация API Management на сервер:
https://petstore3.swagger.io/api/v3/pet/findByStatus?status=pending- URL-адрес веб-службы:
https://petstore3.swagger.io/api/v3 - Конечная точка операции:
/pet/findByStatus(то же, что и в определении API Management)
- URL-адрес веб-службы:
Следующий шаг
Перейдите к следующему учебнику, чтобы узнать, как создать и опубликовать продукт: