Regravar URL
APLICA-SE A: todas as camadas do Gerenciamento de API
A política rewrite-uri
converte a URL de uma solicitação de sua forma pública para a forma esperada pelo serviço Web, conforme mostrado no exemplo a seguir.
URL pública –
http://api.example.com/storenumber/ordernumber
URL de Solicitação –
http://api.example.com/v2/US/hardware/storenumber&ordernumber?City&State
Essa política pode ser usada quando uma URL simplificada para humanos e/ou navegadores precisar ser transformado na URL esperada pelo serviço Web. Essa política só precisa ser aplicada ao expor um formato de URL alternativo, como URLs limpas, URLs RESTful, URLs fáceis de usar ou URLs SEO amigáveis que são URLs puramente estruturais que não contêm uma sequência de consulta e, em vez disso, contêm apenas o caminho do recurso (após o esquema e a autoridade). Frequentemente, isso é feito para fins estéticos, de usabilidade ou de otimização do mecanismo de pesquisa (SEO).
Observação
Defina os elementos da política e os elementos filho na ordem fornecida na declaração da política. Saiba mais sobre como definir e editar as políticas de Gerenciamento de API.
Declaração de política
<rewrite-uri template="uri template" copy-unmatched-params="true | false" />
Atributos
Name | Descrição | Obrigatório | Padrão |
---|---|---|---|
template | A URL real do serviço Web com quaisquer parâmetros de cadeia de consulta. Expressões de política são permitidas. Quando expressões são utilizadas, o valor inteiro deve ser uma expressão. | Sim | N/D |
copy-unmatched-params | Especifica se os parâmetros de consulta na solicitação de entrada não presentes no modelo de URL original são adicionados ao URL definido pelo modelo regravado. Expressões de política são permitidas. | Não | true |
Uso
- Seções de política: de entrada
- Escopos de política: global, espaço de trabalho, produto, API, operação
- Gateways: clássico, v2, consumo, auto-hospedado, espaço de trabalho
Observações de uso
Você pode adicionar somente parâmetros de cadeia de consulta usando a política. Não é possível adicionar parâmetros extras no caminho do modelo 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údo relacionado
Para obter mais informações sobre como trabalhar com políticas, consulte:
- Tutorial: Transformar e proteger sua API
- Referência de Política para uma lista completa das instruções de política e suas configurações
- Expressões de política
- Definir ou editar políticas
- Reutilizar configurações de política
- Repositório de snippets de política
- Kit de ferramentas de políticas do Gerenciamento de API do Azure
- Criar políticas usando o Microsoft Copilot no Azure