Compartilhar via


Executar a seleção de caminho baseado em parâmetro com o Gateway de Aplicativo do Azure – Portal do Microsoft Azure

Este artigo descreve como usar o portal do Azure para configurar uma instância SKU de Gateway de Aplicativo v2 para executar a seleção de caminho baseada em parâmetro combinando os recursos de reescrita de URL com roteamento baseado em caminho.

Se você não tiver uma assinatura do Azure, crie uma conta gratuita antes de começar.

Antes de começar

Você precisa ter uma instância de SKU do Gateway de Aplicativo v2 para concluir as etapas neste artigo. Não há suporte para reescrita de URL e de cabeçalhos no SKU v1. Se você não tiver o SKU v2, crie uma instância da SKU v2 do Gateway de Aplicativo antes de começar.

Entrar no Azure

Entre no portal do Azure com sua conta do Azure.

Configurar a seleção de caminho baseado em parâmetro

Para este exemplo, você tem um site de compras, a categoria do produto for passada como uma cadeia de caracteres de consulta na URL e você quiser rotear a solicitação para o back-end com base na cadeia de caracteres de consulta:

Etapa 1: Criar um mapa de caminho conforme mostrado na imagem a seguir:

Uma captura de tela do cenário de reescrita de URL 1-1.

Etapa 2 (a): Crie um conjunto de reescrita que tenha 3 regras de reescrita:

  • A primeira regra tem uma condição que verifica a variável query_string para category=shoes e tem uma ação que reescreve o caminho da URL para /listing1 e tem a opção Reavaliar o mapa de caminho habilitada

  • A segunda regra tem uma condição que verifica a variável query_string para category=bags e tem uma ação que reescreve o caminho da URL para /listing2 e tem a opção Reavaliar o mapa de caminho habilitada

  • A terceira regra tem uma condição que verifica a variável query_string para category=accessories e tem uma ação que reescreve o caminho da URL para /listing3 e tem a opção Reavaliar o mapa de caminho habilitada

    Uma captura de tela do cenário de reescrita de URL 1-2.

Etapa 2 (b): Associar esse conjunto de reescrita ao caminho padrão da regra com base no caminho anterior:

Uma captura de tela do cenário de reescrita de URL 1-3.

Se o usuário solicitar contoso.com/listing?category=any, isso será correspondido com o caminho padrão, já que nenhum dos padrões de caminho no mapa de caminho (/listing1, /listing2, /listing3) será correspondido. Como você associou o conjunto de reescrita anterior a esse caminho, o conjunto de reescrita é avaliado. Como a cadeia de caracteres de consulta não corresponde à condição em nenhuma das 3 regras de reescrita neste conjunto, nenhuma ação de reescrita será realizada. Portanto, a solicitação será direcionada sem alterações para o back-end associado ao caminho padrão (que é GenericList).

Se o usuário solicitar contoso.com/listing?category=shoes, o caminho padrão será correspondido. Neste caso, a condição na primeira regra será atendida. Portanto, a ação associada à condição será executada, reescrevendo o caminho da URL para /listing1 e reavaliando o mapa do caminho. Quando o mapa do caminho for reavaliado, a solicitação corresponderá ao caminho associado ao padrão /listing1 e a solicitação será direcionada para o back-end associado a esse padrão (ShoesListBackendPool).

Observação

Esse cenário pode ser estendido para qualquer cabeçalho ou valor de cookie, caminho de URL, cadeia de caracteres de consulta ou variáveis de servidor com base nas condições definidas e, essencialmente, permite que você roteie solicitações com base nessas condições.

Próximas etapas

Para saber mais sobre como configurar alguns casos de uso comuns, confira cenários de reescrita de cabeçalho comum.