진짜 개발자
본문 바로가기

AWS/Computing

AWS - API Gateway, Lambda 를 이용한 API 요청에 따른 서로다른 문자 보내기

728x90

API Gateway, Lambda 를 이용한 

API 요청에 따른 서로다른 문자 보내기


1. 시나리오

1. 목표

1) 사용자는 Web을 통해 API를 이용한다

2) API Gateway는 사용자의 요청을 받아 Lambda를 트리거 시킨다

3) Lambda에서 요청에 따른 처리를 한뒤 Topic에 Publish 한다

4) 해당 Topic을 구독하고 있던 핸드폰으로 Lambda에서 처리된 

    데이터가 문자메시지로 온다


2. 목표인프라

- 리젼은 SMS서비스가 되는 Tokyo 리전에서 진행한다



2. Lambda 생성 및 설정

1) 다음의 코드를 실행하는 Lambda Function을 생성한다


2) 다음의 코드를 실행하는 두번째 Lambda Function을 생성한다

3) Trigger및 나머지 설정들을 다음을 진행하면서 자동으로 해결된다



3. API Gateway 생성 및 설정

API Gateway 사용법 - http://galid1.tistory.com/398


1. Resource 생성 및 메소드 생성

1) API를 생성한뒤 GET 메소드를 생성한다 

   Integration type은 Lambda function으로 하고

   이전에 생성한 Lambda Function을 지정한다


2) love라는 자원을 만들어 두번째 생성한 Lambda를 연결한다

2. 배포

- 외부에서 접근하여 api를 사용하기 위해 배포를 한다


1) "/" 루트를 선택한뒤 Actions 를 클릭하고 Deploy API를 선택한다


2) 간단하게 Stage의 정보를 입력하고 Deploy를 클릭한다


3) stages 탭을 클릭한뒤 방금 배포한 api(Message)를 클릭한다

    inoke URL에 적혀있는 URL이 endpoint이다





4. SNS 설정

SNS 설정 방법 - http://galid1.tistory.com/396


1) SNS 서비스의 좌측 Topics 탭을 클릭한뒤 새로운 Topic을 생성한다 이름은 임의로 지정한다


2) 구독자 생성을 위해 좌측 Subscriptions탭을 클릭한 뒤 Create subscription을 클릭한다


3)  Topic ARN : 1)번에서 생성한 Topic의 ARN을 입력한다

     Protocol : 문자메시지를 받기 위해 SMS를 선택

     Endpoint : 문자를 받을 번호를 입력한다 ( 국번 +82)



5. Web 사이트를 통해 Client에게 제공

1) EC2 인스턴스에 다음과 같은 간단한 웹사이트를 구축한다


2) code