次の方法で共有


特定のヘッダーで要求をインターセプトする

既定では、開発プロキシは、 devproxyrc.json ファイルで構成されている URL に一致するすべての要求をインターセプトします。 特定のコンポーネントによって発行された要求など、特定の要求のみをインターセプトする場合は、特定のヘッダーで要求をインターセプトするように開発プロキシを構成できます。

特定のヘッダーで要求をインターセプトするには、 devproxyrc.json ファイルに filterByHeaders プロパティを追加します。 filterByHeadersプロパティで、要求のフィルター処理に使用するヘッダーを指定します。 ヘッダーごとに、要求をインターセプトするために開発プロキシにヘッダーに含める必要がある値を指定します。 値を空のままにすると、Dev Proxy は、その値に関係なく、指定されたヘッダーを含む要求をインターセプトします。

例: 特定のヘッダーと値で要求をインターセプトする

次の例では、contoso-intranetを含む値を持つx-app ヘッダーを含む要求をインターセプトするように開発プロキシを構成する方法を示します。

{
  "$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"
    }
  ]
}

この構成を使用して、Dev Proxy は、contoso-intranet値を持つx-app ヘッダーを含む要求をインターセプトします。次に例を示します。

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

Dev Proxy は、指定した値と部分的に一致する要求もインターセプトします。次に例を示します。

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

x-app ヘッダーの値にcontoso-intranetが含まれていないため、開発プロキシは次の要求をインターセプトしません。

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

部分一致は便利であり、コンポーネントや SDK のバージョンなど、時間の経過と共に変化する可能性のある値で要求をインターセプトできます。

例: 値に関係なく、特定のヘッダーで要求をインターセプトする

値に関係なく、特定のヘッダーを含む要求をインターセプトするには、値を空のままにします。

{
  "$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": ""
    }
  ]
}

この構成を使用して、Dev Proxy は値に関係なく、 x-contoso ヘッダーを含む要求をインターセプトします。

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

または:

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

開発プロキシは、 x-contoso ヘッダーがないため、次の要求をインターセプトしません。

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