728x90
자료 : https://hello-bryan.tistory.com/456
이번에는 REST API를 사용하는 트리거를 만들어보자.
API 게이트웨이 [트리거 추가] 버튼 클릭
이렇게 옵션 선택!
REST API 부분 추가
# app.py
import json
import requests
def handler(event, context):
url = 'https://jsonplaceholder.typicode.com/albums'
response = requests.get(url)
status_code = response.status_code
body = response.reason
if status_code == 200:
album_list = json.loads(response.content)
body = f'album count = {len(album_list)}'
print(event)
# HTTP API
if 'album_id' in event:
album = next(filter(lambda x: x['id'] == event['album_id'], album_list), None)
body = album if album else f'not found album id : {event["album_id"]}'
if 'pathParameters' in event:
try:
album_id = event['pathParameters']['album_id']
album = next(filter(lambda x: x['id'] == int(album_id), album_list), None)
except:
pass
# REST API
if event['httpMethod'] == 'POST':
req_data = json.loads(event['body']) #JSNO 처리
album = next(filter(lambda x: x['id'] == req_data['album_id'], album_list), None)
body = album if album else f'not found album id : {event["album_id"]}'
return {
'statusCode': status_code,
'body': json.dumps(body)
}
이전 방식과 유사하지만 코드만 좀 다를 분이다.
요청 시 POSTMAN으로 json body에 { "album_id": 15} 이런 형식으로 보내주면 된다.
728x90
'Research > AWS' 카테고리의 다른 글
AWS_주요 제품들 (0) | 2023.04.26 |
---|---|
Cloud computing (0) | 2023.04.14 |
AWS Lambda_HTTP API Trigger로 함수 호출하기 (0) | 2023.04.12 |
AWS lambda_컨테이너로 함수 생성하기 (0) | 2023.04.12 |
AWS Lambda_serverless로 간단한 lambda 함수 생성하기 (0) | 2023.04.10 |
댓글