투케이2K

107. (Aws/Amazon) [Amazon API Gateway] API 게이트웨이 람다 Lambda 프록시 통합 설정 옵션 설명 정리 본문

Aws (Amazon)

107. (Aws/Amazon) [Amazon API Gateway] API 게이트웨이 람다 Lambda 프록시 통합 설정 옵션 설명 정리

투케이2K 2025. 8. 25. 21:20
728x90

[개발 환경 설정]

개발 환경 : Aws / Amazon Web Services

 

[설명 정리]

// --------------------------------------------------------------------------------------
[개발 및 환경]
// --------------------------------------------------------------------------------------

- 인프라 : Aws / Amazon Web Services


- 기술 구분 : Aws / Aws API Gateway / Lambda / API


- 사전) Aws API Gateway 게이트웨이 설명 정리 - 중개 서버 : 

  >> Aws API Gateway 는 규모와 관계없이 REST 및 WebSocket API 를 생성, 게시, 유지, 모니터링 및 보호하기 위한 AWS 서비스입니다

  >> Aws API Gateway 는 트래픽 관리, CORS 지원, 권한 부여 및 액세스 제어, 제한, 모니터링 및 API 버전 관리 등 최대 수십만 개의 동시 API 호출을 수신 및 처리하는 데 관계된 모든 작업을 처리합니다

  >> Aws API Gateway 에서 제공하는 대표적 API 종류 : 

    - [RESTful] HTTP API : 프록시 기능 정도만을 사용할 때 적합하며, 단순하고 빠릅니다

    - [RESTful] REST API : API 관리 기능 및 API 요청/응답에 대한 제어가 필요할 경우 사용합니다

    - WebSocket API : 웹소켓 (실시간 양방향 통신) 사용 시 주로 사용합니다 
  
      : API Gateway는 백엔드 서비스와 클라이언트 간의 메시지 전송을 처리하기 위해 지속적인 연결을 유지합니다

    -  참고 : API Gateway 는 표준 HTTP 메서드 (예: GET, POST, PUT, PATCH, DELETE) 를 구현합니다


- 사전) Aws Lambda 함수 설명 : 

  >> Aws Lambda 는 서버 리스 FaaS 솔루션으로, 함수의 인스턴스를 실행하여 이벤트를 처리할 수 있습니다

  >> Aws Lambda 는 이벤트에 응답하여 코드를 실행 하고 해당 코드에 필요한 컴퓨팅 리소스를 자동으로 관리합니다

// --------------------------------------------------------------------------------------






// --------------------------------------------------------------------------------------
[설 명]
// --------------------------------------------------------------------------------------

1. 사전) API GateWay Lambda 프록시 통합 설정 방법

  >> API GateWay Path : /view

  >> API GateWay Method : GET

  >> Lambda 프록시 통합 설정 [활성] 상태


2. Lambda 프록시 통합 옵션 설명 정리 : 

  >> Lambda 프록시 통합 (Lambda Proxy Integration) 은 API Gateway 가 들어오는 HTTP 요청을 그대로 Lambda 함수에 전달하고, Lambda 함수가 HTTP 응답 형식으로 결과를 반환하는 방식입니다.

  >> Lambda 프록시 통합 설정 값이 [True] 로 설정 되어 있어야 REST API 요청 시 parameter 가 자동으로 전달 됩니다


3. Lambda 프록시 통합의 주요 특징 : 

  >> 전체 요청 정보 전달 : HTTP 메서드, 경로, 쿼리 스트링, 헤더, 바디 등 모든 요청 정보가 Lambda 함수에 JSON 형태로 전달됩니다.

  >> Lambda 함수가 HTTP 응답 구성 : Lambda 함수는 statusCode, headers, body를 포함한 JSON 객체를 반환해야 합니다.

  >> API Gateway에서 별도 매핑 불필요 : 요청/응답 매핑 템플릿을 따로 작성할 필요 없이, Lambda 함수에서 직접 처리합니다.


4. Lambda 프록시 통합 시 API 요청 예시 (Get 방식) : 

  >> REST API 호출 툴 예시 : /view?name=twok12

  >> AWS 콘솔에서 Lambda 테스트 JSON 예시 : 

    {
      "queryStringParameters": {
        "name": "twok12"
      }
    }


5. Lambda 프록시 통합 시 필수 응답 형식 예시 :

  {
    "statusCode": 200,
    "headers": {
      "Content-Type": "application/json"
    },
    "body": "응답 내용 (문자열)"
  }


6. 실제 Lambda 함수에서 Python 사용 Return 반환 코드 예시 : 

import json

def lambda_handler(event, context):
    print("EVENT:", event)
    return {
        "statusCode": 200,
        "headers": {
            "Content-Type": "application/json"
        },
        "body": json.dumps({
            "message": "Hello!",
            "query": event.get("queryStringParameters", {})
        })
    }

// --------------------------------------------------------------------------------------






// --------------------------------------------------------------------------------------
[참고 사이트]
// --------------------------------------------------------------------------------------

[Amazon API Gateway] Aws API Gateway 게이트웨이 설명 정리 - 중개 서버

https://blog.naver.com/kkh0977/223827753479?trackingCode=blog_bloghome_searchlist


[Aws API Gateway REST API]

https://docs.aws.amazon.com/ko_kr/apigateway/latest/developerguide/apigateway-rest-api.html


[Aws API Gateway의 REST API에 대한 API 엔드포인트 유형]

https://docs.aws.amazon.com/ko_kr/apigateway/latest/developerguide/api-gateway-api-endpoint-types.html


[Aws API Gateway에서 퍼블릭 또는 프라이빗 API 엔드포인트 유형 변경]

https://docs.aws.amazon.com/ko_kr/apigateway/latest/developerguide/apigateway-api-migration.html


[Aws Lambda] Aws 사이트에서 생성 된 Lambda 람다 검증 함수 리스트 및 내용 소스 코드 확인 방법

https://blog.naver.com/kkh0977/223765198383


[Aws API Gateway 게이트웨이 생성 및 Lambda 람다 함수 연동 방법]

https://blog.naver.com/kkh0977/223919568635


[API 게이트웨이 REST Get 호출 및 Lambda 프록시 통합 설정 Return 응답 반환 형식 정리]

https://blog.naver.com/kkh0977/223980399876

// --------------------------------------------------------------------------------------
728x90
반응형
Comments