Definir cabeçalho
APLICA-SE A: todas as camadas do Gerenciamento de API
A política set-header
atribui um valor a um cabeçalho de solicitação e/ou resposta HTTP existente ou adiciona um novo cabeçalho de solicitação/resposta.
Use a política para inserir uma lista de cabeçalhos HTTP em uma mensagem HTTP. Quando colocada em um pipeline de entrada, esta política define os cabeçalhos HTTP para a solicitação que está sendo passada para o serviço alvo. Quando colocada em um pipeline de saída, esta política define os cabeçalhos HTTP para a resposta que está sendo passada para o cliente do gateway.
Observação
Defina os elementos da política e os elementos filho na ordem fornecida na declaração da política. Para ajudá-lo a configurar essa política, o portal fornece um editor guiado baseado em formulário. Saiba mais sobre como definir e editar as políticas de Gerenciamento de API.
Declaração de política
<set-header name="header name" exists-action="override | skip | append | delete">
<value>value</value> <!--for multiple headers with the same name add additional value elements-->
</set-header>
Atributos
Name | Descrição | Obrigatório | Padrão |
---|---|---|---|
exists-action | Especifica a ação a ser executada quando o cabeçalho já estiver especificado. Este atributo deve ter um dos valores a seguir. - override : substitui o valor do cabeçalho existente.- skip : não substitui o valor do cabeçalho existente.- append : acrescenta o valor ao valor do cabeçalho existente.- delete : remove o cabeçalho da solicitação.Quando definido como override , a inscrição de várias entradas com o mesmo nome resultará na configuração do cabeçalho de acordo com todas as entradas (que serão listadas várias vezes), e, apenas os valores listados serão definidos no resultado. Expressões de política são permitidas. |
Não | override |
name | Especifica o nome do cabeçalho a ser definido. Expressões de política são permitidas. | Sim | N/D |
Elementos
Nome | Descrição | Obrigatório |
---|---|---|
value | Especifica o valor do cabeçalho a ser definido. Expressões de política são permitidas. Para adicionar vários cabeçalhos com o mesmo nome, adicione elementos value adicionais. |
Não |
Uso
- Seções da política: entrada, saída, back-end, em caso de erro
- 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
Vários valores de um cabeçalho são concatenados em uma cadeia de caracteres CSV; por exemplo:
headerName: value1,value2,value3
As exceções incluem cabeçalhos padronizados, cujos valores:
- podem conter vírgulas (
User-Agent
,WWW-Authenticate
,Proxy-Authenticate
) - podem conter a data (
Cookie
,Set-Cookie
,Warning
), - contêm a data (
Date
,Expires
,If-Modified-Since
,If-Unmodified-Since
,Last-Modified
,Retry-After
).
No caso de exceções, vários valores de cabeçalho não serão concatenados em uma cadeia de caracteres e serão passados como cabeçalhos separados; por exemplo:
User-Agent: value1
User-Agent: value2
User-Agent: value3
As seguintes limitações se aplicam:
- Não há suporte para a remoção do cabeçalho
Server
. - Cabeçalhos:
Connection
,ContentLength
,KeepAlive
eTransferEncoding
não podem ser modificados ou excluídos.
Exemplos
Adicionar cabeçalho, substituir existente
<set-header name="some header name" exists-action="override">
<value>20</value>
</set-header>
Remover cabeçalho
<set-header name="some header name" exists-action="delete" />
Encaminhar informações de contexto para o serviço de back-end
Este exemplo mostra como aplicar a política no nível da API para fornecer informações de contexto para o serviço de back-end.
<!-- Copy this snippet into the inbound element to forward some context information, user id and the region the gateway is hosted in, to the backend service for logging or evaluation -->
<set-header name="x-request-context-data" exists-action="override">
<value>@(context.User.Id)</value>
<value>@(context.Deployment.Region)</value>
</set-header>
Para obter mais informações, veja Expressões de política e Variável de contexto.
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
- Criar políticas usando o Microsoft Copilot no Azure