Примечание.
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
Управление API Azure — это служба, которая позволяет создавать современный шлюз API для существующих внутренних служб.
Когда вы связываете службу управления API Azure со статическим веб-приложением, все запросы к статическому веб-приложению с маршрутом, начинающимся с /api, проксируются к тому же маршруту в службе управления API Azure.
Служба управления API Azure может быть связана с несколькими статическими веб-приложениями одновременно. Продукт управления API создается для каждого связанного статического веб-приложения. Все API, добавленные в продукт, доступны для связанного статического веб-приложения.
Все ценовые категории управления API Azure доступны для использования со статическими веб-приложениями Azure.
Параметры API для статических веб-приложений включают следующие службы Azure:
Дополнительные сведения см. в обзоре API.
Замечание
Для интеграции с управлением API Azure требуется стандартный план статических веб-приложений.
Интеграция серверной части не поддерживается в окружениях pull request для Статических веб-приложений.
Предпосылки
Чтобы связать экземпляр управления API со статическим веб-приложением, необходимо иметь существующий ресурс управления API Azure и статическое веб-приложение.
| Resource | Description |
|---|---|
| Управление API Azure | Если у вас еще нет одного, выполните действия, описанные в руководстве по созданию экземпляра службы управления API Azure . |
| Существующее статическое веб-приложение | Если у вас еще нет одного, выполните действия, описанные в руководстве по началу работы , чтобы создать статическое веб-приложение No Framework . |
Пример
Рассмотрим существующий экземпляр службы управления API Azure, предоставляющий конечную точку с помощью следующего расположения.
https://my-api-management-instance.azure-api.net/api/getProducts
После установки связи вы можете получить доступ к той же конечной точке по пути api из статического веб-приложения, как показано в этом примере URL-адреса.
https://red-sea-123.azurestaticapps.net/api/getProducts
Оба URL-адреса указывают на одну конечную точку API. Конечная точка в экземпляре управления API должна содержать префикс /api, так как Static Web Apps сопоставляют запросы, сделанные к /api, и проксируют весь путь к связанному ресурсу.
Подключите службу управления API Azure
Связывание экземпляра службы управления API со статическими веб-приложениями
Чтобы связать службу управления API Azure в качестве серверной части API для статического веб-приложения, выполните следующие действия.
В портале Azure перейдите к статическому веб-приложению.
Выберите API в меню навигации.
Найдите среду, с которой нужно связать службу управления API. Выберите Ссылка.
В типе ресурсов серверной части выберите "Управление API".
В подписке выберите подписку, содержащую службу управления API Azure, которую вы хотите связать.
В имени ресурса выберите службу управления API Azure.
Выберите Ссылка.
Это важно
По завершении процесса связывания запросы на маршруты, начинающиеся с /api, проксируются в службу управления API Azure. Однако по умолчанию API не раскрываются. См. статью "Настройка API для получения запросов", чтобы настроить продукт управления API и разрешить использование необходимых API.
Настройка API для получения запросов
Служба Azure API Management имеет функцию продуктов, которая определяет, как предоставляются API. В рамках процесса связывания служба управления API настроена с продуктом, имеющим имя Azure Static Web Apps - <STATIC_WEB_APP_AUTO_GENERATED_HOSTNAME> (Linked).
Чтобы сделать API доступными для связанного статического веб-приложения, добавьте их в продукт.
В экземпляре управления API на портале выберите вкладку "Продукты ".
Azure Static Web Apps - <STATIC_WEB_APP_AUTO_GENERATED_HOSTNAME> (Linked)Выберите продукт.Нажмите кнопку +Добавить API.
Выберите API, которые вы хотите предоставить из статических веб-приложений, а затем щелкните ссылку Select .
Процесс связывания также автоматически применяет следующую конфигурацию к службе управления API:
- Продукт, связанный с связанным статическим веб-приложением, настроен на требование подписки.
- Подписка управления API под названием
Generated for Static Web Apps resource with default hostname: <STATIC_WEB_APP_AUTO_GENERATED_HOSTNAME>создается и связывается с продуктом с тем же именем. - В продукт добавляется политика входящей валидации JWT, чтобы разрешить только запросы, содержащие допустимый токен доступа из связанного статического веб-приложения.
- Связанное статическое веб-приложение настроено так, чтобы включать первичный ключ подписки и действительный токен доступа при перенаправлении запросов к службе управления API.
Это важно
Изменение политики validate-jwt или повторное создание первичного ключа подписки предотвращает прокси-запросы статического веб-приложения в службу управления API. Не изменяйте или не удаляйте подписку или продукт, связанный со статическим веб-приложением.
Отмена связи со службой управления API Azure
Чтобы отменить связь со службой управления API Azure из статического веб-приложения, выполните следующие действия.
В портале Azure перейдите к статическому веб-приложению.
Найдите среду, связь с которой вы хотите отменить, и выберите имя службы управления API.
Выберите "Отменить связь".
После завершения процесса отмены связывания запросы к маршрутам, начинающимся с /api/ , больше не проксируются к вашему сервису управления API.
Замечание
Продукт управления API и подписка, связанная с связанным статическим веб-приложением, не удаляется автоматически. Их можно удалить из службы управления API.
Устранение неполадок
Если API не связаны с продуктом управления API, созданным для ресурса статических веб-приложений, доступ к маршруту /api в статическом веб-приложении возвращает следующую ошибку из управления API.
{
"statusCode": 401,
"message": "Access denied due to invalid subscription key. Make sure to provide a valid key for an active subscription."
}
Чтобы устранить эту ошибку, настройте API, которые необходимо предоставить в статических веб-приложениях для продукта, созданного для него, как описано в разделе "Настройка API для получения запросов ".