통합 패스스루 동작
비 프록시 통합의 경우, 메서드 요청에서 페이로드를 전달하고 Content-Type
헤더가 지정된 매핑 템플릿과 일치하지 않거나 매핑 템플릿이 정의되지 않은 경우 클라이언트가 제공한 요청 페이로드를 변환 없이 통합 요청을 통해 백엔드로 전달되도록 선택할 수 있습니다. 이 프로세스를 통합 패스스루라고 합니다.
프록시 통합을 위해 API Gateway는 백엔드로 전체 요청을 패스스루하며, 패스스루 동작을 수정할 수 있는 옵션은 없습니다.
수신되는 요청의 실제 패스스루 동작은 통합 요청 설정 중에 지정된 매핑 템플릿에 대해 선택한 옵션과 수신되는 요청에 클라이언트가 설정한 Content Type 헤더에 따라 결정됩니다. 여기에는 다음과 같은 세 가지 옵션이 있습니다.
- 요청 Content-Type 헤더와 일치하는 템플릿이 없는 경우
메서드 요청 콘텐츠 유형이 매핑 템플릿과 연결된 콘텐츠 유형 중 일치하지 않는 경우 메서드 요청 본문이 변환 없이 통합 요청을 지나 백엔드에 전달되도록 하려면 이 옵션을 선택합니다.
API Gateway API를 호출하는 경우 이 옵션을 선택하려면 통합에서
WHEN_NO_MATCH
를passthroughBehavior
속성 값으로 설정하면 됩니다.- 정의된 템플릿이 없는 경우(권장)
-
매핑 템플릿이 통합 요청에 정의되어 있지 않을 때 메서드 요청 본문이 변환 없이 통합 요청을 지나 벡엔드에 전달되도록 하려면 이 옵션을 선택합니다. 이 옵션을 선택할 때 템플릿이 정의되어 있는 경우 매핑되지 않은 콘텐츠 유형의 메서드 요청은 HTTP 415 미지원 미디어 유형 응답과 함께 거부됩니다.
API Gateway API를 호출하는 경우 이 옵션을 선택하려면 통합에서
WHEN_NO_TEMPLATES
를passthroughBehavior
속성 값으로 설정하면 됩니다. - 없음
-
매핑 템플릿이 통합 요청에 정의되어 있지 않을 때 메서드 요청 본문이 변환 없이 통합 요청을 지나 벡엔드에 전달되지 않도록 하려면 이 옵션을 선택합니다. 이 옵션을 선택할 때 템플릿이 정의되어 있는 경우 매핑되지 않은 콘텐츠 유형의 메서드 요청은 HTTP 415 미지원 미디어 유형 응답과 함께 거부됩니다.
API Gateway API를 호출하는 경우 이 옵션을 선택하려면 통합에서
NEVER
를passthroughBehavior
속성 값으로 설정하면 됩니다.
다음 예제에서는 가능한 패스스루 동작을 설명합니다.
예제 1: 하나의 매핑 템플릿이 application/json
콘텐츠 유형에 대한 통합 요청에 정의되어 있습니다.
Content-type 헤더\선택된 패스스루 옵션 | WHEN_NO_MATCH |
WHEN_NO_TEMPLATES |
NEVER |
---|---|---|---|
없음(기본값: application/json ) |
템플릿을 사용하여 요청 페이로드가 변환됩니다. | 템플릿을 사용하여 요청 페이로드가 변환됩니다. | 템플릿을 사용하여 요청 페이로드가 변환됩니다. |
application/json |
템플릿을 사용하여 요청 페이로드가 변환됩니다. | 템플릿을 사용하여 요청 페이로드가 변환됩니다. | 템플릿을 사용하여 요청 페이로드가 변환됩니다. |
application/xml |
요청 페이로드가 변환되지 않고 백엔드로 그대로 전송됩니다. | 요청이 HTTP 415 Unsupported Media
Type 응답과 함께 거부됩니다. |
요청이 HTTP 415 Unsupported Media
Type 응답과 함께 거부됩니다. |
예제 2: 하나의 매핑 템플릿이 application/xml
콘텐츠 유형에 대한 통합 요청에 정의되어 있습니다.
Content-type 헤더\선택된 패스스루 옵션 | WHEN_NO_MATCH |
WHEN_NO_TEMPLATES |
NEVER |
---|---|---|---|
없음(기본값: application/json ) |
요청 페이로드가 변환되지 않고 백엔드로 그대로 전송됩니다. | 요청이 HTTP 415 Unsupported Media
Type 응답과 함께 거부됩니다. |
요청이 HTTP 415 Unsupported Media
Type 응답과 함께 거부됩니다. |
application/json |
요청 페이로드가 변환되지 않고 백엔드로 그대로 전송됩니다. | 요청이 HTTP 415 Unsupported Media
Type 응답과 함께 거부됩니다. |
요청이 HTTP 415 Unsupported Media
Type 응답과 함께 거부됩니다. |
application/xml |
템플릿을 사용하여 요청 페이로드가 변환됩니다. | 템플릿을 사용하여 요청 페이로드가 변환됩니다. | 템플릿을 사용하여 요청 페이로드가 변환됩니다. |