쿠키 기본 설정 선택

당사는 사이트와 서비스를 제공하는 데 필요한 필수 쿠키 및 유사한 도구를 사용합니다. 고객이 사이트를 어떻게 사용하는지 파악하고 개선할 수 있도록 성능 쿠키를 사용해 익명의 통계를 수집합니다. 필수 쿠키는 비활성화할 수 없지만 '사용자 지정' 또는 ‘거부’를 클릭하여 성능 쿠키를 거부할 수 있습니다.

사용자가 동의하는 경우 AWS와 승인된 제3자도 쿠키를 사용하여 유용한 사이트 기능을 제공하고, 사용자의 기본 설정을 기억하고, 관련 광고를 비롯한 관련 콘텐츠를 표시합니다. 필수가 아닌 모든 쿠키를 수락하거나 거부하려면 ‘수락’ 또는 ‘거부’를 클릭하세요. 더 자세한 내용을 선택하려면 ‘사용자 정의’를 클릭하세요.

API Gateway 콘솔을 사용하여 REST API에 대한 게이트웨이 응답 설정

포커스 모드
API Gateway 콘솔을 사용하여 REST API에 대한 게이트웨이 응답 설정 - Amazon API Gateway

다음 예시에서는 API Gateway 콘솔을 사용하여 REST API에 대한 게이트웨이 응답을 설정하는 방법을 보여줍니다.

API Gateway 콘솔을 사용하여 게이트웨이 응답을 사용자 지정하려면
  1. https://console.aws.amazon.com/apigateway에서 API Gateway 콘솔에 로그인합니다.

  2. REST API를 선택합니다.

  3. 기본 탐색 창에서 게이트웨이 응답을 선택합니다.

  4. 응답 유형을 선택한 다음 편집을 선택합니다. 이 연습에서는 누락된 인증 토큰을 예로 들겠습니다.

  5. API Gateway가 생성한 상태 코드를 변경하여, 사용자 API의 요구 사항에 부합하는 다른 상태 코드를 반환할 수 있습니다. 이 예에서 사용자 지정은 상태 코드를 기본값(403)에서 404로 변경합니다. 클라이언트가 지원되지 않거나 잘못되어 찾을 수 없는 리소스를 호출할 경우 이 오류 메시지가 발생하기 때문입니다.

  6. 사용자 지정 헤더를 반환하려면 응답 헤더에서 헤더 추가를 선택합니다. 설명을 위해 다음 사용자 지정 헤더를 추가하겠습니다.

    Access-Control-Allow-Origin:'a.b.c' x-request-id:method.request.header.x-amzn-RequestId x-request-path:method.request.path.petId x-request-query:method.request.querystring.q

    앞서 본 헤더 매핑에서 정적 도메인 이름('a.b.c')은 Allow-Control-Allow-Origin 헤더에 매핑되어 API에 대한 CORS 액세스를 허용합니다. x-amzn-RequestId의 입력 요청 헤더는 응답의 request-id에 매핑됩니다. 수신되는 요청의 petId 경로 변수는 응답의 request-path 헤더에 매핑됩니다. 원래 요청의 q 쿼리 파라미터는 응답의 request-query 헤더에 매핑됩니다.

  7. 응답 템플릿에서 콘텐츠 유형application/json를 유지하고 템플릿 본문 편집기에 다음과 같은 본문 매핑 템플릿을 입력합니다.

    { "message":"$context.error.messageString", "type": "$context.error.responseType", "statusCode": "'404'", "stage": "$context.stage", "resourcePath": "$context.resourcePath", "stageVariables.a": "$stageVariables.a" }

    이 예는 게이트웨이 응답 본문의 속성에 $context$stageVariables 속성을 매핑하는 방법을 보여줍니다.

  8. Save changes(변경 사항 저장)를 선택합니다.

  9. 새 단계 또는 기존 단계에 API를 배포합니다.

해당 API 메서드의 호출 URL이 https://o81lxisefl.execute-api.us-east-1.amazonaws.com/custErr/pets/{petId}라고 가정하고 다음 CURL 명령을 호출하여 게이트웨이 응답을 테스트합니다.

curl -v -H 'x-amzn-RequestId:123344566' https://o81lxisefl.execute-api.us-east-1.amazonaws.com/custErr/pets/5/type?q=1

추가적인 쿼리 문자열 파라미터 q=1이 API와 호환되지 않기 때문에 지정된 게이트웨이 응답에서 오류가 반환됩니다. 다음과 비슷한 게이트웨이 응답이 표시됩니다.

> GET /custErr/pets/5?q=1 HTTP/1.1 Host: o81lxisefl.execute-api.us-east-1.amazonaws.com User-Agent: curl/7.51.0 Accept: */* HTTP/1.1 404 Not Found Content-Type: application/json Content-Length: 334 Connection: keep-alive Date: Tue, 02 May 2017 03:15:47 GMT x-amzn-RequestId: 123344566 Access-Control-Allow-Origin: a.b.c x-amzn-ErrorType: MissingAuthenticationTokenException header-1: static x-request-query: 1 x-request-path: 5 X-Cache: Error from cloudfront Via: 1.1 441811a054e8d055b893175754efd0c3.cloudfront.net (CloudFront) X-Amz-Cf-Id: nNDR-fX4csbRoAgtQJ16u0rTDz9FZWT-Mk93KgoxnfzDlTUh3flmzA== { "message":"Missing Authentication Token", "type": MISSING_AUTHENTICATION_TOKEN, "statusCode": '404', "stage": custErr, "resourcePath": /pets/{petId}, "stageVariables.a": a }

앞의 예에서는 API 백엔드가 Pet Store이고 API에 단계 변수, a가 정의된 것으로 가정했습니다.

프라이버시사이트 이용 약관쿠키 기본 설정
© 2025, Amazon Web Services, Inc. 또는 계열사. All rights reserved.