HEADERS 절

사용자 요청 및 응답에 특정 HTTP 헤더를 변경하는 경우 HEADERS 절을 정의하여, SERVER 절이나 DESTINATION 절에 headers 항목을 설정합니다.

설정 항목

다음은 HEADERS 절의 환경 설정 형식입니다.

#"headers": {
    #"headers_list": [
        {
            "name": string,
            "action": string,
            "field_name": string,
            #"field_value": string,
            #"reg_exp": string,
            #"status_code": integer     # 0
        }
    ]
}

절과 설정 항목의 구성에 대한 기호나 내용에 대한 자세한 내용은 설정 항목 값의 형식 및 설정 방법을 참고합니다.

headers_list

HEADERS 설정에 대한 목록입니다.

구분 설명

자료형

array(object)

headers_list/name (필수 항목)

HEADERS 설정의 이름입니다. 다른 절에서 HEADERS 절의 기능을 사용할 때는 이 'name’을 설정해야 합니다.

구분 설명

자료형

string

범위

255자 이내

headers_list/action (필수 항목)

HTTP 헤더의 처리 방식에 대한 동작을 설정합니다.

구분 설명

자료형

string

범위

"AddRequest" | "AddResponse" | "AddIfAbsentRequest" | "AddIfAbsentResponse" | "AppendResponse" | "EchoResponse" | "SetResponse" | "UnsetResponse"

다음은 각 동작에 대한 설명입니다.

종류 설명

AddRequest

요청에 설정된 HTTP 헤더를 추가합니다. 설정된 헤더가 요청에 이미 존재하는 경우 같은 헤더가 추가되기 때문에 사용에 유의합니다

AddResponse

응답에 설정된 HTTP 헤더를 추가합니다 설정된 헤더가 응답에 이미 존재하는 경우 같은 헤더가 추가되기 때문에 사용에 유의합니다

AddIfAbsentRequest

요청에 설정된 HTTP 헤더가 없는 경우 헤더를 추가합니다

AddIfAbsentResponse

응답에 설정된 HTTP 헤더가 없는 경우 헤더를 추가합니다

AppendResponse

이미 존재하는 헤더의 값 뒤에 설정된 FieldValue를 추가합니다. 해당 헤더가 없을 경우 아무런 동작도 수행하지 않습니다.

EchoResponse

요청에 설정된 HTTP 헤더가 존재하는 경우 응답에 같은 헤더 및 값을 추가합니다. 해당 동작은 FieldValue를 설정하지 않습니다.

SetResponse

응답에 설정된 HTTP 헤더가 없는 경우 헤더를 추가합니다. 이미 존재하는 경우 헤더의 값을 설정된 FieldValue로 치환합니다.

UnsetResponse

응답에 설정된 HTTP 헤더가 존재하는 경우 해당 헤더를 삭제합니다. 해당 동작은 FieldValue를 설정하지 않습니다.

동작의 종류에 따라 field_value는 필수 항목일 수 있습니다.

headers_list/field_name (필수 항목)

제어할 HTTP 헤더의 이름을 설정합니다.

구분 설명

자료형

string

범위

255자 이내

headers_list/field_value

제어할 HTTP 헤더의 값을 설정합니다.

구분 설명

자료형

string

범위

255자 이내

headers_list/reg_exp

HTTP 요청 URL이 Regular expression 패턴과 매칭되는 경우 헤더를 제어하기 위해 설정합니다.

구분 설명

자료형

string

범위

511자 이내

headers_list/status_code

특정 HTTP 상태 코드일 경우 헤더를 제어하기 위해 설정합니다.

구분 설명

자료형

integer

범위

0 ~ 599

기본값

0

설정 예시

다음은 HEADERS 절을 설정한 예시입니다.

{
    "headers": {
    "headers_list": [
      {
        "name": "header1",
        "action": "AppendResponse",
        "field_name": "Test_Header",
        "field_value": "test"
      }
    ]
  }
}