Freigeben über


Abfangen von Anforderungen mit bestimmten Headern

Standardmäßig fängt Dev Proxy alle Anforderungen ab, die den URLs entsprechen, die in der devproxyrc.json Datei konfiguriert sind. Wenn Sie nur bestimmte Anforderungen abfangen möchten, z. B. Anforderungen, die von einer bestimmten Komponente ausgestellt wurden, können Sie Dev Proxy so konfigurieren, dass Anforderungen mit bestimmten Headern abgefangen werden.

Um Anforderungen mit bestimmten Headern abzufangen, fügen Sie in der devproxyrc.json Datei die filterByHeaders Eigenschaft hinzu. Geben Sie in der filterByHeaders Eigenschaft die Header an, die Sie zum Filtern der Anforderungen verwenden möchten. Geben Sie für jeden Header den Wert an, den der Header enthalten soll, damit der Dev-Proxy die Anforderung abfangen kann. Wenn Sie den Wert leer lassen, fängt Dev Proxy Anforderungen ab, die den angegebenen Header enthalten, unabhängig vom Wert.

Beispiel: Abfangen von Anforderungen mit einem bestimmten Header und Wert

Im folgenden Beispiel wird veranschaulicht, wie Sie Dev Proxy so konfigurieren, dass Anforderungen abgefangen werden, die den Header mit einem Wert enthalten, der x-app Folgendes enthält contoso-intranet:

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

Mit dieser Konfiguration fängt Dev Proxy Anforderungen ab, die den x-app Header mit dem Wert contoso-intranetenthalten, z. B.:

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

Dev Proxy fängt auch Anforderungen ab, die teilweise mit dem angegebenen Wert übereinstimmen, z. B.:

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

Dev Proxy fängt die folgende Anforderung nicht ab, da der Wert des x-app Headers nicht enthält contoso-intranet:

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

Der partielle Abgleich ist praktisch und ermöglicht es Ihnen, Anforderungen mit Werten abzufangen, die sich im Laufe der Zeit ändern können, z. B. Komponenten- oder SDK-Version.

Beispiel: Abfangen von Anforderungen mit einem bestimmten Header unabhängig vom Wert

Lassen Sie den Wert leer, um Anforderungen abzufangen, die einen bestimmten Header enthalten, unabhängig vom Wert:

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

Mit dieser Konfiguration fängt Dev Proxy Anforderungen ab, die den x-contoso Header enthalten, unabhängig vom Wert:

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

Oder:

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

Der Dev-Proxy fängt die folgende Anforderung nicht ab, da er nicht über den x-contoso Header verfügt:

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