Выбор пути на основе параметров с помощью Шлюз приложений Azure — портал Azure
В этой статье описывается, как использовать портал Azure для настройки экземпляра SKU Шлюз приложений Azure версии 2 для выбора пути на основе параметров путем объединения возможностей переопределения URL-адресов с маршрутизацией на основе пути.
Если у вас нет подписки Azure, создайте бесплатную учетную запись, прежде чем приступить к работе.
Подготовка к работе
Чтобы выполнить действия, описанные в этой статье, необходимо иметь экземпляр SKU версии 2 Шлюз приложений. Перезапись и перезапись заголовков URL-адресов не поддерживаются в номере SKU версии 1. Если у вас нет SKU версии 2, создайте экземпляр SKU шлюза приложений версии 2 перед началом.
Вход в Azure
Войдите на портал Azure с помощью своей учетной записи Azure.
Настройка выбора пути на основе параметров
В этом примере у вас есть веб-сайт покупок. Категория продукта передается в виде строки запроса в URL-адресе. Чтобы перенаправлять запрос на серверную часть на основе строки запроса, выполните следующие действия.
Создайте карту пути.
Создайте набор перезаписи с тремя правилами перезаписи:
Первое правило имеет условие, которое проверяет
query_string
переменную дляcategory=shoes
. Действие перезаписывает путь URL-адреса в/listing1
. Включена повторное вычисление карты путей.Во втором правиле есть условие, которое проверяет
query_string
переменную дляcategory=bags
. Действие перезаписывает путь URL-адреса в/listing2
. Включена повторное вычисление карты путей.Третье правило имеет условие, которое проверяет
query_string
переменную дляcategory=accessories
. Действие перезаписывает путь URL-адреса в/listing3
. Включена повторное вычисление карты путей.
Свяжите этот набор перезаписи с путем по умолчанию предыдущего правила на основе пути.
Если пользователь запрашивает contoso.com/listing?category=any
, он соответствует пути по умолчанию, так как шаблоны пути в карте пути (/listing1
, /listing2
, /listing3
) не совпадают. Так как вы связали предыдущий набор перезаписи с этим путем, этот набор перезаписи вычисляется. Строка запроса не соответствует условию в любом из трех правил перезаписи в этом наборе перезаписи, поэтому действие перезаписи не выполняется. Запрос направляется без изменений в серверную часть, связанную с путем по умолчанию (т GenericList
. е. ).
Если пользователь запрашивает contoso.com/listing?category=shoes
, путь по умолчанию соответствует. В этом случае условие в первом правиле совпадает. Выполняется действие, связанное с условием, которое перезаписывает путь /listing1
URL-адреса и переоценивает карту пути. При повторном вычислении карты пути запрос соответствует пути, связанному с шаблоном /listing1
. Запрос направляется в серверную часть, связанную с этим шаблоном (ShoesListBackendPool
).
Примечание.
Этот сценарий можно расширить до любого значения заголовка или файла cookie, URL-пути, строки запроса или переменных сервера на основе определенных условий. Затем можно маршрутизировать запросы на основе этих условий.
Связанный контент
Дополнительные сведения о настройке некоторых распространенных вариантов использования см . в сценариях перезаписи общих заголовков.