API Gateway의 REST API 모의 통합 - Amazon API Gateway

API Gateway의 REST API 모의 통합

Amazon API Gateway는 API 메서드에 대한 모의 통합을 지원합니다. 이 기능을 통해 API 개발자는 통합 백엔드가 없어도 API Gateway에서 직접 API 응답을 생성할 수 있습니다. API 개발자라면 이 기능을 사용하여 프로젝트 개발이 완료되기 전에 API로 작업해야 하는 종속 팀에 대한 차단을 해제할 수 있습니다. 또한 이 기능을 활용하여 API의 개요와 탐색 기능을 제공하는 API에 대해 시작 페이지를 프로비저닝할 수 있습니다. 이러한 시작 페이지의 예는 자습서: 예제를 가져와 REST API 생성에서 설명한 예제 API의 루트 리소스에 대한 GET 메서드의 통합 요청 및 응답을 참조하세요.

API 개발자는 API Gateway가 모의 통합 요청에 응답하는 방법을 결정합니다. 이를 위해, 메서드의 통합 요청 및 통합 응답을 구성하여 정해진 상태 코드와 응답을 연결합니다. 모의 통합이 포함된 메서드가 200 응답을 반환하려면 다음을 반환하도록 통합 요청 본문 매핑 템플릿을 구성해야 합니다.

{"statusCode": 200}

예를 들어 다음의 본문 매핑 템플릿이 포함되도록 200 통합 응답을 구성하십시오.

{ "statusCode": 200, "message": "Go ahead without me." }

마찬가지로 메서드가 예를 들어 500 오류 응답을 반환하려면 다음을 반환하도록 통합 요청 본문 매핑 템플릿을 설정해야 합니다.

{"statusCode": 500}

예를 들어 다음의 매핑 템플릿을 사용하여 500 통합 응답을 설정하십시오.

{ "statusCode": 500, "message": "The invoked method is not supported on the API resource." }

또는 통합 요청 매핑 템플릿을 정의하지 않고 모의 통합의 메서드가 기본 통합 응답을 반환하도록 할 수도 있습니다. 기본 통합 응답은 정의되지 않은 HTTP status regex(HTTP 상태 regex)가 포함된 응답입니다. 적절한 패스스루 동작이 설정되어야 합니다.

참고

모의 통합은 대규모 응답 템플릿을 지원하지 않습니다. 사용 사례에 필요한 경우 대신 Lambda 통합 사용을 고려해야 합니다.

통합 요청 매핑 템플릿을 사용하여 애플리케이션 로직을 삽입하면 특정 조건에 따라 반환할 모의 통합 응답을 결정할 수 있습니다. 예를 들어 수신되는 요청에서 scope 쿼리 파라미터를 사용하여 성공 응답을 반환할지 오류 응답을 반환할지 결정할 수 있습니다.

{ #if( $input.params('scope') == "internal" ) "statusCode": 200 #else "statusCode": 500 #end }

이런 방법으로 모의 통합의 메서드는 오류 응답을 포함한 다른 유형의 호출은 거부하면서 내부 호출을 통과시킵니다.

이 단원에서는 API Gateway 콘솔을 사용하여 API 메서드에 대한 모의 통합을 활성화하는 방법에 대해 설명합니다.