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


Выбор пути на основе параметров с помощью Шлюз приложений Azure — портал Azure

В этой статье описывается, как использовать портал Azure для настройки экземпляра SKU Шлюз приложений Azure версии 2 для выбора пути на основе параметров путем объединения возможностей переопределения URL-адресов с маршрутизацией на основе пути.

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

Подготовка к работе

Чтобы выполнить действия, описанные в этой статье, необходимо иметь экземпляр SKU версии 2 Шлюз приложений. Перезапись и перезапись заголовков URL-адресов не поддерживаются в номере SKU версии 1. Если у вас нет SKU версии 2, создайте экземпляр SKU шлюза приложений версии 2 перед началом.

Вход в Azure

Войдите на портал Azure с помощью своей учетной записи Azure.

Настройка выбора пути на основе параметров

В этом примере у вас есть веб-сайт покупок. Категория продукта передается в виде строки запроса в URL-адресе. Чтобы перенаправлять запрос на серверную часть на основе строки запроса, выполните следующие действия.

  1. Создайте карту пути.

    Снимок экрана: сценарий переопределения URL-адресов 1-1.

  2. Создайте набор перезаписи с тремя правилами перезаписи:

    • Первое правило имеет условие, которое проверяет query_string переменную для category=shoes. Действие перезаписывает путь URL-адреса в /listing1. Включена повторное вычисление карты путей.

    • Во втором правиле есть условие, которое проверяет query_string переменную для category=bags. Действие перезаписывает путь URL-адреса в /listing2. Включена повторное вычисление карты путей.

    • Третье правило имеет условие, которое проверяет query_string переменную для category=accessories. Действие перезаписывает путь URL-адреса в /listing3. Включена повторное вычисление карты путей.

      Снимок экрана: сценарий переопределения URL-адресов 1-2.

  3. Свяжите этот набор перезаписи с путем по умолчанию предыдущего правила на основе пути.

    Снимок экрана: сценарий перезаписи URL-адресов 1-3.

Если пользователь запрашивает contoso.com/listing?category=any, он соответствует пути по умолчанию, так как шаблоны пути в карте пути (/listing1, /listing2, /listing3) не совпадают. Так как вы связали предыдущий набор перезаписи с этим путем, этот набор перезаписи вычисляется. Строка запроса не соответствует условию в любом из трех правил перезаписи в этом наборе перезаписи, поэтому действие перезаписи не выполняется. Запрос направляется без изменений в серверную часть, связанную с путем по умолчанию (т GenericList. е. ).

Если пользователь запрашивает contoso.com/listing?category=shoes, путь по умолчанию соответствует. В этом случае условие в первом правиле совпадает. Выполняется действие, связанное с условием, которое перезаписывает путь /listing1 URL-адреса и переоценивает карту пути. При повторном вычислении карты пути запрос соответствует пути, связанному с шаблоном /listing1. Запрос направляется в серверную часть, связанную с этим шаблоном (ShoesListBackendPool).

Примечание.

Этот сценарий можно расширить до любого значения заголовка или файла cookie, URL-пути, строки запроса или переменных сервера на основе определенных условий. Затем можно маршрутизировать запросы на основе этих условий.

Дополнительные сведения о настройке некоторых распространенных вариантов использования см . в сценариях перезаписи общих заголовков.