TIL 22.11.02 / Flask / API

쓰옹·2022년 11월 2일
0

3일차.
미니프로젝트 마무리 단계에 접어들었다.
기능 넣는 역할은 다른 팀원이 했지만
만들어진 코드를 보고 API 기능을 공부했다.

Flask

프레임워크로 서버를 구동시켜준다.
flask 서버를 돌리는 파일은 통상적으로 app.py로 이름짓는다.

#flask 시작 코드

from flask import Flask
app = Flask(__name__)

@app.route('/')  #이 부분을 수정해서 url을 나눈다
def home():
   return 'This is Home!'
   
@app.route('/mypage')  
def mypage():
   return 'This is mypage!'   
   
if __name__ == '__main__':  
   app.run('0.0.0.0',port=5000,debug=True)
  • 그럼 loccalhost:5000으로 서버가 만들어진다.

    flask 기본 폴더 구조

    프로젝트 폴더 안에,
    static 폴더 (이미지, css파일을 넣어둡니다)
    templates 폴더 (html파일을 넣어둡니다)
    app.py 파일

  • venv 파일도 있지만 안보이는 것처럼!

API

서버와 클라이언트를 연결해주는 창구같은 존재. 라고 합니다

API방식

  • GET방식 : 데이터 조회
    예를들어 데이터베이스에 저장된 값을 불러오기 위해 GET 방식을 사용한다.
  • POST방식 : 데이터 값에 관한 사항 (생성, 변경, 삭제)
  • app.py에 get요청 api코드와 post요청 api코드 입력,
    html파일에 Jquery와 get요청, post요청 ajex코드 입력 후 사용

코드로 살펴보기_미니프로젝트

  • POST요청 코드
    app.py
    index.html
    완성본

    db확인
  • GET요청 코드
    app.py
    index.html
    완성본

정리

  • 서버 연결 시에 flask 패키지 설치와 기본 코드 , DB사용 시 연결코드 잊지 않기
  • 변수 설정 필수!


마무리

.append().prepend()

팀원이 만든 코드를 살펴보고 의견을 냈다.
원래 코드는 .append()로 새로운 데이터가 생기면 방명록이 아래로 쌓이게 되는데
위로 쌓이게 하고싶어서 .append()의 반대를 구글링했다.
.prepend()가 내가 원하는 데로 구현되는걸 확인하고 수정을 요청했다.
서버구현의 부분은 아니지만 원하는걸 알기 위해 구글링하고 확인 후 의견제출까지 하는 과정은 후에 공부할 때도 좋은 밑거름이 될 것 같다.

오늘의 아쉬운점이라면 위에 포스팅에는 없는 내용이지만..

방명록 삭제버튼 부분 코드를
방명록 자체 데이터에 숫자를 매겨 DB에 저장하고
삭제까지 할 수 있는 코드를 만들어서 의견을 내고 싶었지만
내 머릿속에서도 정리가 안되서 실패했다.! 다른 팀원분이 방법을 먼저 찾아내시기도 했고..ㅎ
그래도 같은 기능을 구현할 수 있는 다양한 코드의 방법을 알게 되니 좋다.
내 생각의 코드를 완성하고 프로젝트에서 쓰인 코드와 비교를 해봐야겠다. 아마 내일?

profile
기록하자기록해!

0개의 댓글