Включение CORS для интерактивной консоли на портале разработчика Управление API

Общий доступ к ресурсам между источниками (CORS) — это механизм на основе заголовка HTTP, позволяющий серверу указывать любые источники (домен, схема или порт), отличный от собственного, из которого браузер должен разрешать загрузку ресурсов.

Чтобы позволить посетителям портала разработчика Управление API использовать интерактивную консоль тестирования на справочных страницах API, включите политику CORS для API в Управление API экземпляре. Если доменное имя портала разработчика не является допустимым источником для запросов API между доменами, пользователи консоли тестирования увидят ошибку CORS.

Для определенных сценариев можно настроить портал разработчика в качестве прокси-сервера CORS, а не включить политику CORS для API.

ОБЛАСТЬ ПРИМЕНЕНИЯ: Разработчик | Базовый | Стандартный | Премиум

Необходимые компоненты

Перейдите к экземпляру службы управления API.

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

    Выбор

  2. На странице Службы Управления API выберите экземпляр Управления API.

    Выбор экземпляра службы

Включение политики CORS для API

Вы можете включить параметр для автоматической настройки политики CORS для всех API в экземпляре Управление API. Вы также можете вручную настроить политику CORS.

Примечание.

Выполняется только одна политика CORS. Если указать несколько политик CORS (например, на уровне API и на уровне всех API), интерактивная консоль может не работать должным образом.

Автоматическое включение политики CORS

  1. В меню экземпляра службы "Управление API" слева в разделе Портал разработчика выберите Обзор портала.
  2. В разделе "Включить CORS" отображается состояние конфигурации политики CORS. Окно предупреждения указывает на отсутствующую или неправильно настроенную политику.
  3. Чтобы включить CORS на портале разработчика для всех API, выберите "Включить CORS".

Снимок экрана, на котором показано, где проверка состояние политики CORS на портале разработчика.

Включение политики CORS вручную

  1. Чтобы просмотреть созданный код политики, выберите Применение вручную на глобальном уровне.
  2. Перейдите ко всем API-интерфейсамв разделе API Управление API экземпляра.
  3. В разделе Обработка входящих запросов щелкните значок </>.
  4. В редакторе политик вставьте политику в <входящий> раздел XML-файла. Убедитесь, что значение <>origin соответствует домену портала разработчика.

Примечание.

Если применить политику CORS в области продукта вместо области API, а API использует проверку подлинности ключа подписки по заголовку, консоль работать не будет.

Браузер автоматически выдает HTTP-запрос OPTIONS, который не содержит заголовок с ключом подписки. Из-за отсутствующего ключа подписки служба Управление API не может связать вызов OPTIONS с продуктом, а поэтому и применить политику CORS.

В качестве обходного решения можно передать ключ подписки в параметре запроса.

Параметр прокси-сервера CORS

В некоторых сценариях (например, если шлюз Управление API изолирован к сети), можно настроить портал разработчика в качестве прокси-сервера CORS, а не включить политику CORS для API. Прокси-сервер CORS направляет вызовы API интерактивной консоли через серверную часть портала в Управление API экземпляре.

Примечание.

Если API предоставляются через локальный шлюз или ваша служба находится в виртуальной сети, требуется подключение к серверной службе портала разработчика Управление API шлюзу.

Чтобы настроить прокси-сервер CORS, перейдите на портал разработчика в качестве администратора:

  1. На странице обзора экземпляра Управление API выберите портал разработчика. Портал разработчика откроется на новой вкладке браузера.
  2. В меню слева административного интерфейса выберите страницы API-интерфейсы>>Details.
  3. На странице "Сведения" выберите "Операция: сведения" и выберите "Изменить мини-приложение".
  4. Выберите "Использовать прокси-сервер CORS".
  5. Сохраните изменения на портале и повторно опубликуйте портал.

Конфигурация CORS для локального портала разработчика

Если вы самостоятельно размещаете портал разработчика, для включения CORS требуется следующая конфигурация:

  • Укажите серверную конечную точку портала с помощью backendUrl параметра в файлах конфигурации. В противном случае локальный портал не знает о расположении серверной службы.

  • Добавьте значения домена Origin в конфигурацию локального портала, указывающую среды, в которых размещен автономный портал. Подробнее