어떻게 API 게이트웨이 REST API의 비공개 통합이 포함된 호스트 헤더를 전달하나요?

2분 분량
0

Amazon API 게이트웨이 엔드포인트 또는 사용자 지정 도메인의 호스트 헤더 값을 사용하고 싶습니다. API 게이트웨이 REST API의 비공개 통합이 포함된 호스트 헤더를 전달하려고 합니다.

간략한 설명

Amazon API Gateway는 기존 요청을 통해 수신한 호스트 값을 통합 엔드포인트에 덮어씁니다. Amazon API Gateway는 통합 요청 엔드포인트의 URL에 따라 호스트 값을 할당합니다.

백엔드에서 API 게이트웨이 엔드포인트 호스트 헤더 값을 사용하려면 사용자 지정 헤더를 사용하세요. 요청 호스트 헤더 값을 포함한 통합 요청 사용자 지정 헤더를 사용합니다.

해결 방법

API 게이트웨이 REST API 생성

1.    API 게이트웨이 콘솔을 엽니다.

2.    API 생성을 선택합니다.

-또는-

API 게이트웨이 처음 사용하는 경우 서비스 소개 페이지가 표시됩니다. REST API에서 빌드를 선택합니다. API 생성 예제 팝업 창이 나타나면 확인을 선택합니다.

3.API 유형 선택REST API창에서 빌드를 선택합니다.

4.새 API 생성에서 새 API를 선택합니다.

5.설정에서 다음 값을 입력합니다.
API 이름에 API 용도를 설명하는 이름을 입력합니다. 예를 들면 다음과 같습니다. ForwardHostHeader.
(선택 사항) 설명에 API 용도를 간략히 설명합니다. 예시: 프라이빗 통합용 호스트 헤더 전달.
엔드포인트 유형의 경우 리전, 엣지 최적화 또는 프라이빗을 선택합니다.

6.    API 생성을 선택합니다.

API의 메서드 요청 및 통합 요청 구성

1.    API 게이트웨이 콘솔을 엽니다.

2.지침에 따라 API Gateway 콘솔을 통해 프라이빗 통합을 포함한 API를 생성합니다.

3.메서드 요청에서 HTTP 요청 헤더를 호스트로 추가합니다.

4.통합 요청에서 HTTP 헤더를 확장한 후 헤더 추가를 선택합니다.

5.사용자 지정 헤더의 이름을 입력합니다. 예를 들면 my_host와 같습니다.

6.매핑 출처에 메소드 요청을 입력합니다. 예를 들면 method.request.header.host와 같습니다. 그런 다음 체크 표시 아이콘을 선택합니다.

새 단계에 API 배포

1.    API 게이트웨이 콘솔을 엽니다.

2.지침에 따라 REST API를 단계에 배포합니다. 자세한 내용을 보려면 API Gateway 콘솔을 사용하여 단계 설정하기를 참조하세요.

3.단계 편집창에서 간접 호출 URL을 클립보드에 복사합니다. 이 URL을 사용하여 API를 간접적으로 호출합니다.

REST API 간접 호출 URL 예제:

https://1a2bc3d456.execute-api.us-east-1.amazonaws.com/stage

4.Application Load Balancer를 백엔드로 사용하는 경우 구성 테스트를 위해 규칙을 추가하세요. 조건으로 “http 헤더”를 선택한 후 API 게이트웨이 호스트 값과 동일한 헤더 및 값으로 “my\ _host”을 지정합니다.

5.API 게이트웨이 URL을 브라우저 창에 붙여넣기 하여 API를 간접 호출합니다. API 게이트웨이의 “my\ _host” 헤더 구성은 API 게이트웨이 호스트 값을 Application Load Balancer로 전달합니다. Application Load Balancer가 조건 세트와 일치하면 구성된 응답을 반환합니다.

관련 정보

API 게이트웨이 콘솔을 통해 요청 및 응답 데이터 매핑 설정

API 게이트웨이 콘솔을 통해 API 설정

Amazon API Gateway 중요 정보

API 게이트웨이 REST API를 Application Load Balancer로 통합하려면 어떻게 해야 하나요?