Intercetar solicitações com cabeçalhos específicos
Por padrão, o Dev Proxy interceta todas as solicitações que correspondem às URLs configuradas no arquivo devproxyrc.json . Quando quiser intercetar apenas solicitações específicas, como solicitações emitidas por um componente específico, você pode configurar o Proxy de Desenvolvimento para intercetar solicitações com cabeçalhos específicos.
Para intercetar solicitações com cabeçalhos específicos, no devproxyrc.json
arquivo, adicione a filterByHeaders
propriedade. filterByHeaders
Na propriedade, especifique os cabeçalhos que você deseja usar para filtrar as solicitações. Para cada cabeçalho, especifique o valor que o cabeçalho deve conter para o Dev Proxy intercetar a solicitação. Se você deixar o valor vazio, o Proxy de Desenvolvimento intercetará solicitações que contenham o cabeçalho especificado, independentemente de seu valor.
Exemplo: intercetar solicitações com um cabeçalho e um valor específicos
O exemplo a seguir demonstra como configurar o Dev Proxy para intercetar solicitações que contêm o x-app
cabeçalho com um valor que contém contoso-intranet
:
{
"$schema": "https://raw.githubusercontent.com/dotnet/dev-proxy/main/schemas/v0.24.0/rc.schema.json",
"plugins": [
// [...] trimmed for brevity
],
"filterByHeaders": [
{
"name": "x-app",
"value": "contoso-intranet"
}
]
}
Usando essa configuração, o Dev Proxy interceta solicitações que contêm o x-app
cabeçalho com o valor contoso-intranet
, por exemplo:
GET https://api.contoso.com/customers
x-app: contoso-intranet
O Dev Proxy também interceta solicitações que correspondem parcialmente ao valor especificado, por exemplo:
GET https://api.contoso.com/customers
x-app: contoso-intranet-search
O Proxy de Desenvolvimento não interceta a seguinte solicitação porque o x-app
valor do cabeçalho não contém contoso-intranet
:
GET https://api.contoso.com/customers
x-app: contoso-public
A correspondência parcial é conveniente e permite intercetar solicitações com valores que podem mudar ao longo do tempo, como componente ou versão do SDK.
Exemplo: intercetar solicitações com um cabeçalho específico, independentemente do valor
Para intercetar solicitações que contenham um cabeçalho específico, independentemente de seu valor, deixe o valor vazio:
{
"$schema": "https://raw.githubusercontent.com/dotnet/dev-proxy/main/schemas/v0.19.0/rc.schema.json",
"plugins": [
// [...] trimmed for brevity
],
"filterByHeaders": [
{
"name": "x-contoso",
"value": ""
}
]
}
Usando essa configuração, o Dev Proxy interceta solicitações que contêm o x-contoso
cabeçalho, independentemente de seu valor:
GET https://api.contoso.com/customers
x-contoso: api-sdk v1.0
Ou:
GET https://api.contoso.com/customers
x-contoso: intranet
O Dev Proxy não interceta a seguinte solicitação porque não tem o x-contoso
cabeçalho:
GET https://api.contoso.com/customers
x-app: contoso-public