Поддержка API в Статические веб-приложения Azure с помощью Azure Управление API
Azure Управление API — это служба, которая позволяет создавать современный шлюз API для существующих внутренних служб.
При связывании службы azure Управление API со статическим веб-приложением все запросы к статичному веб-приложению с маршрутом, начинающимся с /api
того же маршрута в службе Управление API Azure.
Служба Azure Управление API может быть связана с несколькими статическими веб-приложениями одновременно. Продукт Управление API создается для каждого связанного статического веб-приложения. Все API, добавленные в продукт, доступны для связанного статического веб-приложения.
Все ценовые категории Azure Управление API доступны для использования с Статические веб-приложения Azure.
Параметры API для Статические веб-приложения включают следующие службы Azure:
Дополнительные сведения см. в обзоре API.
Примечание.
Для интеграции с Azure Управление API требуется план Статические веб-приложения Standard.
Интеграция серверной части не поддерживается в средах запросов на вытягивание Статические веб-приложения.
Необходимые компоненты
Чтобы связать экземпляр управления API со статическим веб-приложением, необходимо иметь существующий ресурс Azure Управление API и статическое веб-приложение.
Ресурс | Description |
---|---|
Управление API Azure | Если у вас еще нет экземпляра, выполните действия, описанные в руководстве по созданию экземпляра службы Управление API Azure. |
Существующее статическое веб-приложение | Если у вас еще нет одного, выполните действия, описанные в руководстве по началу работы , чтобы создать статическое веб-приложение No Framework . |
Пример
Рассмотрим существующий экземпляр Azure Управление API, предоставляющий конечную точку через следующее расположение.
https://my-api-management-instance.azure-api.net/api/getProducts
После установки связи вы можете получить доступ к той же конечной точке по пути api
из статического веб-приложения, как показано в этом примере URL-адреса.
https://red-sea-123.azurestaticapps.net/api/getProducts
Оба URL-адреса указывают на одну конечную точку API. Конечная точка в экземпляре Управление API должна иметь /api
префикс, так как Статические веб-приложения сопоставляет запросы, сделанные /api
и прокси-серверы, весь путь к связанному ресурсу.
Связывание службы Управление API Azure
Связывание экземпляра Управление API с Статические веб-приложения
Чтобы связать службу Azure Управление API в качестве серверной части API для статического веб-приложения, выполните следующие действия.
В портал Azure перейдите в статическое веб-приложение.
Выберите API в меню навигации.
Найдите среду, с которой нужно связать службу Управление API. Выберите Ссылка.
В типе ресурсов серверной части выберите Управление API.
В подписке выберите подписку, содержащую службу Azure Управление API, которую вы хотите связать.
В имени ресурса выберите службу Azure Управление API.
Выберите Ссылка.
Важно!
По завершении процесса связывания запросы на маршруты, начинающиеся с /api
прокси-службы Azure Управление API. Однако по умолчанию api не предоставляются. Сведения о настройке API для получения запросов на настройку продукта Управление API, чтобы разрешить использовать API.
Настройка API для получения запросов
В Управление API Azure есть функция продуктов, которая определяет способ поверхности 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)
Выберите продукт.Выберите Add API Key (Добавить ключ API).
Выберите API, которые вы хотите предоставить из Статические веб-приложения, а затем щелкните ссылку "Выбрать".
Процесс связывания также автоматически применяет следующую конфигурацию к службе Управление API:
- Продукт, связанный с связанным статическим веб-приложением, настроен на требование подписки.
- Создается
Generated for Static Web Apps resource with default hostname: <STATIC_WEB_APP_AUTO_GENERATED_HOSTNAME>
Управление API подписка и область в продукт с тем же именем. - Политика входящего проверки jwt добавляется в продукт, чтобы разрешить только запросы, содержащие допустимый маркер доступа из связанного статического веб-приложения.
- Связанное статическое веб-приложение настроено для включения первичного ключа подписки и допустимого маркера доступа при прокси-запросах к службе Управление API.
Важно!
Изменение политики validate-jwt или повторное создание первичного ключа подписки предотвращает прокси-запросы статического веб-приложения в службу Управление API. Не изменяйте или не удаляйте подписку или продукт, связанный со статическим веб-приложением.
Отмена связи службы azure Управление API
Чтобы отменить связывание службы Azure Управление API со статического веб-приложения, выполните следующие действия.
В портал 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 для получения запросов".