Reescrever URL
APLICA-SE A: Todas as camadas de gerenciamento de API
A rewrite-uri
política converte uma URL de solicitação de sua forma pública para o formulário esperado pelo serviço Web, conforme mostrado no exemplo a seguir.
URL pública -
http://api.example.com/storenumber/ordernumber
URL do pedido -
http://api.example.com/v2/US/hardware/storenumber&ordernumber?City&State
Esta política pode ser usada quando um URL humano e/ou amigável para o navegador deve ser transformado no formato de URL esperado pelo serviço Web. Essa política só precisa ser aplicada ao expor um formato de URL alternativo, como URLs limpas, URLs RESTful, URLs amigáveis ou URLs amigáveis para SEO que são URLs puramente estruturais que não contêm uma cadeia de caracteres de consulta e, em vez disso, contêm apenas o caminho do recurso (após o esquema e a autoridade). Isto é frequentemente feito para fins estéticos, de usabilidade ou de otimização para motores de busca (SEO).
Nota
Defina os elementos da política e os elementos filho na ordem fornecida na declaração de política. Saiba mais sobre como definir ou editar políticas de Gerenciamento de API.
Declaração de política
<rewrite-uri template="uri template" copy-unmatched-params="true | false" />
Atributos
Nome | Descrição | Necessário | Predefinição |
---|---|---|---|
aninhado | A URL real do serviço Web com quaisquer parâmetros de cadeia de caracteres de consulta. São permitidas expressões de política. Quando as expressões são usadas, todo o valor deve ser uma expressão. | Sim | N/A |
cópia-params incomparáveis | Especifica se os parâmetros de consulta na solicitação de entrada não presentes no modelo de URL original são adicionados à URL definida pelo modelo de reescrita. São permitidas expressões de política. | Não | true |
Utilização
- Secções políticas: entrada
- Âmbitos de política: global, área de trabalho, produto, API, operação
- Gateways: clássico, v2, consumo, auto-hospedado, espaço de trabalho
Notas de utilização
Você só pode adicionar parâmetros de cadeia de caracteres de consulta usando a política. Não é possível adicionar parâmetros de caminho de modelo extras na URL de reescrita.
Exemplo
<policies>
<inbound>
<base />
<rewrite-uri template="/v2/US/hardware/{storenumber}&{ordernumber}?City=city&State=state" />
</inbound>
<outbound>
<base />
</outbound>
</policies>
<!-- Assuming incoming request is /get?a=b&c=d and operation template is set to /get?a={b} -->
<policies>
<inbound>
<base />
<rewrite-uri template="/put" />
</inbound>
<outbound>
<base />
</outbound>
</policies>
<!-- Resulting URL will be /put?c=d -->
<!-- Assuming incoming request is /get?a=b&c=d and operation template is set to /get?a={b} -->
<policies>
<inbound>
<base />
<rewrite-uri template="/put" copy-unmatched-params="false" />
</inbound>
<outbound>
<base />
</outbound>
</policies>
<!-- Resulting URL will be /put -->
Políticas relacionadas
Conteúdos relacionados
Para obter mais informações sobre como trabalhar com políticas, consulte:
- Tutorial: Transforme e proteja sua API
- Referência de política para uma lista completa de declarações de política e suas configurações
- Expressões de política
- Definir ou editar políticas
- Reutilizar configurações de política
- Recompra de trechos de política
- Kit de ferramentas de política de Gerenciamento de API do Azure
- Criar políticas usando o Microsoft Copilot no Azure