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


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

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

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

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

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

Предпосылки

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

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

    снимок экрана, на котором показаны службы управления API в результатах поиска.

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

    снимок экрана, на котором показан экземпляр службы управления 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-файла. Убедитесь, что значение источника< соответствует домену> портала разработчика.

Примечание.

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

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

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

Конфигурация CORS для имени личного домена

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

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

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

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

Примечание.

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

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

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

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

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

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

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