프록시 리소스를 사용하여 프록시 통합 설정 - Amazon API Gateway

기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.

프록시 리소스를 사용하여 프록시 통합 설정

프록시 리소스를 사용하여 API Gateway API에서 프록시 통합을 설정하려면 다음 작업을 수행합니다.

  • {proxy+}의 복잡한 경로 변수를 사용하여 프록시 리소스를 생성합니다.

  • 프록시 리소스에서 ANY 메서드를 설정합니다.

  • HTTP 또는 Lambda 통합 유형을 사용하여 리소스 및 메서드를 백엔드와 통합합니다.

참고

복잡한 경로 변수, ANY 메서드 및 프록시 통합 유형은 일반적으로 함께 사용되지만 독립적인 기능입니다. 복잡한 리소스에 대해 특정 HTTP 메서드를 구성하거나 비 프록시 통합 유형을 프록시 리소스에 적용할 수 있습니다.

API Gateway는 Lambda 프록시 통합 또는 HTTP 프록시 통합으로 메서드를 처리할 때 특정 제한 및 제약을 적용합니다. 자세한 내용은 Amazon API Gateway 중요 정보 단원을 참조하세요.

참고

패스스루를 포함하는 프록시 통합을 사용할 경우 API Gateway에서는 페이로드의 콘텐츠 유형이 지정되지 않은 경우 기본 Content-Type:application/json 헤더를 반환합니다.

프록시 리소스는 HTTP 프록시 통합이나 Lambda 프록시 통합을 사용하여 백엔드와 통합될 때 가장 강력합니다.

프록시 리소스를 사용한 HTTP 프록시 통합

API Gateway REST API에서 HTTP_PROXY로 지정되는 HTTP 프록시 통합은 메서드 요청을 백엔드 HTTP 엔드포인트와 통합하기 위한 것입니다. API Gateway에서는 이 통합 유형을 사용하여 프런트엔드와 백엔드 사이에 전체 요청 및 응답을 전달할 뿐이며 특정 제약 및 제한의 적용을 받습니다.

참고

HTTP 프록시 통합은 다중 값 헤더와 쿼리 문자열을 지원합니다.

HTTP 프록시 통합을 프록시 리소스에 적용할 경우 단일 통합 설정으로 HTTP 백엔드의 일부 또는 전체 엔드포인트 계층을 공개하도록 API를 설정할 수 있습니다. 예를 들어 웹사이트의 백엔드가 루트 노드(/site)에서 /site/a0/a1/.../aN, /site/b0/b1/.../bM과 같은 여러 트리 노드 분기로 구성된다고 가정합니다. ANY의 프록시 리소스에 대한 /api/{proxy+} 메서드를 URL 경로가 /site/{proxy}인 백엔드 엔드포인트와 통합할 경우, 단일 통합 요청으로 [a0, a1, ..., aN, b0, b1, ...bM, ...]에 대해 모든 HTTP 작업(GET, POST 등)을 지원할 수 있습니다. 그 대신에 프록시 통합을 특정 HTTP 메서드(예: GET)에 적용할 경우 그 결과로 얻는 통합 요청은 그러한 백엔드 노드 중 하나에서 지정된(예: GET) 작업으로 작동합니다.

프록시 리소스를 사용한 Lambda 프록시 통합

API Gateway REST API에서 AWS_PROXY로 지정되는 Lambda 프록시 통합은 백엔드에서 메서드 요청을 Lambda 함수와 통합하기 위한 것입니다. 이 통합 유형을 통해 API Gateway에서는 기본 매핑 템플릿을 적용하여 전체 요청을 Lambda 함수로 보내고 Lambda 함수의 출력을 HTTP 응답으로 변환합니다.

마찬가지로 Lambda 프록시 통합을 /api/{proxy+}의 프록시 리소스에 적용하여 백엔드 Lambda 함수가 /api 아래의 API 리소스 변경에 개별적으로 대응하도록 단일 통합을 설정할 수 있습니다.