다음을 통해 공유


특정 헤더를 사용하여 요청 가로채기

기본적으로 개발자 프록시는 devproxyrc.json 파일에 구성된 URL과 일치하는 모든 요청을 가로채는 것입니다. 특정 구성 요소에서 발급한 요청과 같은 특정 요청만 가로채려는 경우 특정 헤더로 요청을 가로채도록 Dev Proxy를 구성할 수 있습니다.

특정 헤더 devproxyrc.json 를 사용하여 요청을 가로채려면 파일에 속성을 추가합니다 filterByHeaders . 속성에서 filterByHeaders 요청을 필터링하는 데 사용할 헤더를 지정합니다. 각 헤더에 대해 요청을 가로채기 위해 개발자 프록시에 대해 헤더에 포함해야 하는 값을 지정합니다. 값을 비워 두면 개발자 프록시는 값에 관계없이 지정된 헤더가 포함된 요청을 가로채게 됩니다.

예: 특정 헤더 및 값으로 요청 가로채기

다음 예제에서는 헤더가 포함된 x-app 요청을 가로채도록 개발자 프록시를 구성하는 방법을 보여 줍니다.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"
    }
  ]
}

이 구성을 사용하여 개발자 프록시는 다음과 같이 값contoso-intranet이 있는 헤더가 x-app 포함된 요청을 가로채게 합니다.

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

또한 개발자 프록시는 지정된 값과 부분적으로 일치하는 요청을 가로채기도 합니다. 예를 들면 다음과 같습니다.

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

헤더 값에 다음이 포함되어 contoso-intranet있지 않으므로 개발자 프록시가 x-app 다음 요청을 가로채지 않습니다.

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

부분 일치는 편리하며 구성 요소 또는 SDK 버전과 같이 시간이 지남에 따라 변경될 수 있는 값으로 요청을 가로챌 수 있습니다.

예: 값에 관계없이 특정 헤더를 사용하여 요청 가로채기

값에 관계없이 특정 헤더가 포함된 요청을 가로채려면 값을 비워 둡니다.

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

이 구성을 사용하여 개발자 프록시는 해당 값에 관계없이 헤더가 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