내용으로 건너뛰기

쿼리 문자열 파라미터를 백엔드 Lambda 함수 또는 HTTP 엔드포인트에 전달하도록 API Gateway REST API를 구성하려면 어떻게 해야 합니까?

3분 분량
0

쿼리 문자열 파라미터를 백엔드 AWS Lambda 함수 또는 HTTP 엔드포인트에 전달하려면 Amazon API Gateway REST API가 필요합니다.

간략한 설명

쿼리 문자열 파라미터를 백엔드 AWS Lambda 함수에 전달하도록 REST API를 구성하려면 Lambda 사용자 지정 통합을 사용하십시오.

쿼리 문자열 파라미터를 HTTP 엔드포인트에 전달하려면 HTTP 사용자 지정 통합을 사용하십시오.

중요: 입력 데이터를 통합 요청 페이로드로 제공해야 합니다. 매핑 템플릿을 사용하여 페이로드를 제공하는 것이 가장 좋습니다. 자세한 내용은 API Gateway의 REST API에 대한 파라미터 매핑 예제를 참조하십시오.

해결 방법

쿼리 문자열 파라미터를 백엔드 Lambda 함수로 전달

다음 단계를 완료하십시오.

  1. API Gateway 콘솔을 연 다음 API를 선택합니다.
  2. 리소스 창에서 구성된 HTTP 메서드를 선택합니다.
    참고: API에 구성된 HTTP 메서드가 두 개 이상인 경우 각 메서드에 대해 이 단계를 반복하십시오.
  3. 메서드 실행 창에서 메서드 요청을 선택한 후 편집을 선택합니다.
  4. URL 쿼리 문자열 파라미터 드롭다운 목록을 확장한 다음 쿼리 문자열 추가를 선택합니다.
  5. 이름 필드에 pet을 입력합니다.
  6. 필수 확인란을 선택한 다음 저장을 선택합니다.
  7. 통합 요청 탭을 선택한 후 편집을 선택합니다.
  8. 매핑 템플릿을 확장한 다음 매핑 템플릿 추가를 선택합니다.
  9. Content-Type 필드에 application/json을 입력합니다.
  10. 매핑 템플릿 편집기에서 현재 스크립트를 복사하고 다음 코드로 대체합니다.
{     "pet": "$input.params('pet')"
}

참고: 자세한 내용은 입력 변수를 참조하십시오. 저장을 선택한 다음 API 배포를 선택합니다. API의 새 엔드포인트를 테스트하려면 다음 curl 명령을 실행합니다.

curl -X GET https://jp58lnf5vh.execute-api.us-west-2.amazonaws.com/dev/lambda-non-proxy?pet=dog

중요: curl 명령에 쿼리 문자열 파라미터 pet=dog가 있는지 확인하십시오.

쿼리 문자열 파라미터를 HTTP 엔드포인트로 전달

다음 단계를 완료하십시오.

  1. API Gateway 콘솔을 연 다음 API를 선택합니다.
  2. 리소스 창에서 구성된 HTTP 메서드를 선택합니다.
    참고: API에 구성된 HTTP 메서드가 두 개 이상인 경우 각 메서드에 대해 이 단계를 반복하십시오.
  3. 메서드 실행 창에서 메서드 요청을 선택한 후 편집을 선택합니다.
  4. URL 쿼리 문자열 파라미터 드롭다운 목록을 확장한 다음 쿼리 문자열 추가를 선택합니다.
  5. 이름 필드에 type을 입력한 다음 저장을 선택합니다.
  6. 통합 요청 탭을 선택한 후 편집을 선택합니다.
  7. URL 쿼리 문자열 파라미터 섹션을 확장합니다.
  8. 이름 필드type을 입력합니다.
  9. 매핑 출처 필드에 method.request.querystring.type을 입력합니다.
  10. 저장을 선택한 다음 API 배포를 선택합니다.
  11. API의 새 엔드포인트를 테스트하려면 다음 curl 명령을 실행합니다.
curl -X GET https://jp58lnf5vh.execute-api.us-west-2.amazonaws.com/dev/http-endpoint?pet=dog

중요: curl 명령에 쿼리 문자열 파라미터 pet=dog가 있는지 확인하십시오.

관련 정보

튜토리얼: Lambda 프록시 통합을 사용하여 REST API 생성

튜토리얼: Lambda 비프록시 통합을 사용하여 REST API 생성

튜토리얼: HTTP 프록시 통합을 사용하여 REST API 생성

튜토리얼: HTTP 비프록시 통합을 사용하여 REST API 생성