Dela via


Fånga upp begäranden med specifika rubriker

Som standard fångar Dev Proxy upp alla begäranden som matchar url:erna som konfigurerats i devproxyrc.json-filen. När du bara vill fånga upp specifika begäranden, till exempel begäranden som utfärdats av en specifik komponent, kan du konfigurera Dev Proxy för att fånga upp begäranden med specifika rubriker.

Om du vill fånga upp begäranden med specifika rubriker lägger du till devproxyrc.json egenskapen i filterByHeaders filen. I egenskapen filterByHeaders anger du de rubriker som du vill använda för att filtrera begäranden. För varje header anger du det värde som headern ska innehålla för att Dev Proxy ska kunna intercepta begäran. Om du lämnar värdet tomt fångar Dev Proxy upp begäranden som innehåller det angivna huvudet, oavsett dess värde.

Exempel: Fånga upp förfrågningar med ett specifikt HTTP-huvud och värde

För att fånga upp begäranden som innehåller x-app header med ett värde som innehåller contoso-intranet, kan du i följande exempel se hur du konfigurerar Dev Proxy:

{
  "$schema": "https://raw.githubusercontent.com/dotnet/dev-proxy/main/schemas/v1.0.0/rc.schema.json",
  "plugins": [
    // [...] trimmed for brevity
  ],
  "filterByHeaders": [
    {
      "name": "x-app",
      "value": "contoso-intranet"
    }
  ]
}

Med den här konfigurationen fångar Dev Proxy upp begäranden som innehåller x-app huvudet med värdet contoso-intranet, till exempel:

GET https://api.contoso.com/customers
x-app: contoso-intranet

Dev Proxy fångar också upp begäranden som delvis matchar det angivna värdet, till exempel:

GET https://api.contoso.com/customers
x-app: contoso-intranet-search

Dev Proxy fångar inte upp följande begäran eftersom värdet för x-app rubriken inte innehåller contoso-intranet:

GET https://api.contoso.com/customers
x-app: contoso-public

Partiell matchning är praktiskt och gör att du kan fånga upp begäranden med värden som kan ändras över tid, till exempel komponent- eller SDK-version.

Exempel: Fånga upp begäranden med en specifik header oavsett värde

Om du vill fånga upp begäranden som innehåller ett specifikt huvud, oavsett dess värde, lämnar du värdet tomt:

{
  "$schema": "https://raw.githubusercontent.com/dotnet/dev-proxy/main/schemas/v1.0.0/rc.schema.json",
  "plugins": [
    // [...] trimmed for brevity
  ],
  "filterByHeaders": [
    {
      "name": "x-contoso",
      "value": ""
    }
  ]
}

Med den här konfigurationen fångar Dev Proxy upp begäranden som innehåller x-contoso huvudet, oavsett dess värde:

GET https://api.contoso.com/customers
x-contoso: api-sdk v1.0

Eller:

GET https://api.contoso.com/customers
x-contoso: intranet

Dev Proxy fångar inte upp följande begäran eftersom den saknar x-contoso-rubriken.

GET https://api.contoso.com/customers
x-app: contoso-public