재형이의 성장통 일지
  • API Gateway 란
    2023년 08월 14일 00시 23분 17초에 업로드 된 글입니다.
    작성자: 재형이
    반응형

    API Gateway 개요

    • Amazon API Gateway는 어떤 규모에서든 개발자가 API를 손쉽게 생성, 게시, 유지 관리, 모니터링 및 보안 유지할 수 있도록 하는 완전관리형 서비스입니다

    지원 API 유형

    1. RESTful API
      : HTTP API를 사용하여 서버리스 워크로드 및 HTTP 벡엔드에 최적화된 RESTful API를 구축합니다. HTTP API는 API 프록시 기능만 필요한 API를 구축할 때 가장 적합합니다. API가 API 프록시 기능과 API 관리 기능을 요구하는 경우, API Gateway는 REST API도 제공합니다
    2. WEBSOCKET API
      : WebSocket API를 사용하여 채팅 앱 및 스트리밍 대시보드와 같은 실시간 양방향 통신 애플리케이션을 구축합니다. API Gateway는 백엔드 서비스와 클라이언트 간의 메시지 전송을 처리하기 위해 지속적인 연결을 유지합니다

     

    API Gateway를 사용해 구현해 본 동영상 업로드 기능

    업로드 기능

    //람다 함수 작성
    const aws = require("aws-sdk");
    
    exports.handler = (event, context, callback) => {
      const s3 = new aws.S3({
      apiVersion: '2006-03-01',
      signatureVersion: 'v4',
    });
      const request = JSON.parse(event.body);
      
      const params = { 
        Bucket: 버킷이름, 
        Key: 저장 경로,
        Expires: 300,// In seconds
        // presigned URL의 유효시간의 기본값은 15분 입니다.
      };
      s3.getSignedUrl("putObject", params, function(err, url){
        if(err) return callback(err);
        callback(null,{
          statusCode: 200,
          headers:{'Access-Control-Allow-Origin':'*'},
          body: url //생성 된 presigned URL을 프론트로 보냄
        });
      });
    };
    • s3 presignedUrl을 생성해서 S3에 파일을 저장하는 람다 함수

    • API Gateway Restful를 사용해서 만든 스테이지 모습
    • /file-upload로 api 요청을 보내면 s3에 업로드가 된다
    반응형

    '클라우드 > AWS' 카테고리의 다른 글

    솔데스크 AWS 클라우드 교육 과정 후기  (2) 2023.08.26
    ECS를 활용한 웹 애플리케이션 배포 - 개인프로젝트  (0) 2023.08.16
    WAF 란  (0) 2023.08.13
    Cognito 란  (0) 2023.08.13
    DMS 란  (0) 2023.08.11
    댓글