📜 오늘 새로 배운 내용
- 수강일자: 2022.10.24~26
- Flask 폴더 구조 만들기 (프로젝트 세팅 - static, templates 폴더 분리, app.py 파일 생성)
- 필요한 패키지 설치하기 (flask, pymongo, dnspython, bs4, requests)
- API 만들고 사용하기 (GET, POST 요청 타입 / mongoDB에서 데이터 불러와서 보여주기, 저장하기)
📝 수업 내용 메모
<flask 제공 함수>
from flask import Flask, render_template, request, jsonify
app = Flask(__name__)
- render_template: templates에 저장된 html을 불러올 때 필요
- request: API 요청 시 필요한 기능
- jsonify: json 형태로 변환해주는 기능
@app.route('/')
def home():
return render_template('index.html')
@app.route('/test', methods=['GET'])
def test_get():
title_receive = request.args.get('title_give')
print(title_receive)
return jsonify({'result':'success', 'msg': '이 요청은 GET!'})
- title_give라는 이름으로 뭔가를 받아와서 title_receive 변수에 넣고 print 한다.
- /test라는 창구에서 그것을 받고 있다.
💡 이슈/고민 또는 이를 해결한 내용
- app.py 파일을 만드는 이유: flask 프로젝트 폴더 안에 app.py라고 지정을 하게 되면 flask가 알아서 인식하고 서버를 구동한다. 다른 이름으로 할 경우에는 따로 환경변수를 지정하면 실행시킬 수 있다. (출처: [Flask] Flask 시작하기)
if __name__ == '__main__':
app.run('0.0.0.0', port=5000, debug=True)
// __name__ : 파이썬 내부적으로 사용하는 특별한 변수
// 보통 파이썬에서 메인에 해당하는 코드에서 많이 볼 수 있다. 즉 프로그램의 시작점이다.
출처: [웹 앱프로그래밍] 파이썬 플라스크(Python Flask) 기본 구조와 HTTP Request
⭐TO-DO LIST
- 4주차 강의 복습 (GET, POST 요청 코드 아직도 너무 헷갈린다...)