서버리스 백엔드
수업 목표
- AWS Lambda를 이용하여 API를 만들 수 있습니다.
- 프론트엔드와 연동하여 구현할 수 있습니다.
DB에 저장된 값 출력하기
if type == 'list':
cursor.execute("select title, content, regDate from bbs")
result = cursor.fetchall()
body = json.dumps({
"message": "success",
"data":result
})
DB에 저장된 값 삭제하기
elif type == 'delete':
idx = event['queryStringParameters']['idx']
cursor.execute("delete from bbs where idx="+idx)
conn.commit()
body = json.dumps({
"message": "success",
})
Cross Origin 처리
'headers': {
'Access-Control-Allow-Headers': 'Content-Type,x-requested-with',
'Access-Control-Allow-Origin': '*',
'Access-Control-Allow-Methods': 'GET'
},
DB에 값 입력하기
if type == 'write':
if event['httpMethod'] == 'OPTIONS':
body = json.dumps({
"message": "success",
})
else:
today = date.today()
body = json.loads(event['body'])
cursor.execute("insert into bbs(title, content, regDate) value('" + body['title'] + "', '" + body['content'] + "', '" + today.strftime("%Y%m%d") + "')")
conn.commit()
body = json.dumps({
"message": "success",
})
검색하기
elif paramType == 'list':
paramWord = event['queryStringParameters']['word']
if not paramWord:
cursor.execute("select idx, title, regDate from bbs")
result = cursor.fetchall()
else:
cursor.execute("select idx, title, regDate from bbs where title like '%"+paramWord+"%'")
result = cursor.fetchall()
body = json.dumps({
"result": "success",
"data": result
})
Reference