매핑 템플릿을 사용한 API의 요청 및 응답 파라미터와 상태 코드 재정의 - Amazon API Gateway

매핑 템플릿을 사용한 API의 요청 및 응답 파라미터와 상태 코드 재정의

표준 API Gateway 파라미터와 응답 코드 매핑 템플릿으로 여러 파라미터를 일대일로 매핑하고 통합 응답 상태 코드 그룹(정규식과 일치하는)을 단일 응답 상태 코드로 매핑할 수 있습니다. 매핑 템플릿 재정의를 통해 다음을 수행할 수 있습니다.

  • 다대일 파라미터 매핑 수행

  • 표준 API Gateway 매핑이 적용된 후 파라미터 재정의

  • 본문 내용이나 기타 파라미터 값을 기반으로 파라미터를 조건부로 매핑

  • 프로그래밍 방식으로 새 파라미터 생성

  • 통합 엔드포인트에서 반환한 상태 코드 재정의

모든 유형의 요청 파라미터와 응답 헤더, 응답 상태 코드 등을 재정의할 수 있습니다.

API의 요청 및 응답 파라미터와 상태 코드를 재정의하는 사용 사례

API에서 API용 매핑 템플릿 재정의를 사용하여 다음을 수행할 수 있습니다.

  • 새 헤더를 두 파라미터의 연속으로 생성(또는 기존 헤더 덮어쓰기)

  • 응답 코드를 본문 콘텐츠에 따라 성공 또는 실패로 재정의

  • 파라미터를 콘텐츠 또는 다른 파라미터의 콘텐츠를 바탕으로 조건부 리매핑

  • JSON 본문의 콘텐츠에 반복 및 헤더 또는 쿼리 문자열로 키 값 페어 리매핑

API의 요청 및 응답 파라미터와 상태 코드를 재정의하기 위한 고려 사항

다음 고려 사항은 매핑 템플릿 재정의를 사용하는 데 영향을 미칠 수 있습니다.

  • 매핑 템플릿 재정의는 프록시 통합 엔드포인트와 함께 사용할 수 없습니다. 데이터 매핑이 부족하기 때문입니다. 통합 유형에 대한 자세한 내용은 API Gateway API 통합 유형 선택 항목을 참조하십시오.

  • 재정의는 최종입니다. 각 파라미터에 한 번만 재정의를 적용할 수 있습니다. 같은 파라미터에 여러 번 재정의를 시도하면 API Gateway에서 5XX 응답을 반환합니다. 템플릿에서 같은 파라미터를 여러 번 재정의해야 할 경우에는 변수를 하나 생성하여 템플릿 마지막에 재정의를 적용하는 것이 좋습니다. 전체 템플릿을 구문 분석한 후에만 템플릿이 적용됩니다. 자세한 내용은 AWS Management Console를 사용한 API의 요청 파라미터 및 헤더 재정의 단원을 참조하세요.

매핑 템플릿 재정의 참조

매핑 템플릿 재정의를 생성하려면 매핑 템플릿에서 다음 $context 변수 중 하나 이상을 사용합니다.

요청 본문 매핑 템플릿 응답 본문 매핑 템플릿
$context.requestOverride.header.header_name $context.responseOverride.header.header_name
$context.requestOverride.path.path_name $context.responseOverride.status
$context.requestOverride.querystring.querystring_name None

API의 요청 및 응답 파라미터와 상태 코드를 재정의하는 예시는 API의 요청 및 응답 파라미터와 상태 코드를 재정의하는 예시 섹션을 참조하세요.