TIL#93 FLASK 기초(1)

Dasom·2020년 10월 16일
0

Flask

목록 보기
1/7

벌써 위코드에서의 8주가 지나가고 다음주부터 한달동안 기업협업을 나가게 되었다. 가게 되는 곳은 브랜디라는 회사이고 Flask 와 로우쿼리를 사용하기 때문에 가기 전에 며칠이라도 공부를 하고 가야겠다고 생각하였다🙂

Framework & Library

📝 공통점
특정 시스템을 구현하기 위해 공통적으로 요구되는 기능들과 구조를 재사용이 가능하도록 구현해 놓은 것

📝 차이점
Library : 개발자가 자신의 코드 안에서 실행한다. 개발자의 코드 안에 일부분으로 포함되어 개발자가 원하는 대로 사용 가능
Framework : 프레임워크가 개발자의 코드를 실행한다. 프레임워크가 제공하는 틀 안에서 개발자가 필요한 로직을 구현

Flask

Flask는 Django 등 파이썬 기반의 다른 웹 프레임워크들보다 가벼운 프레임워크이다.
일단 설치를 위해서는 가상환경 $ conda create '가상환경이름' 을 실행한 후 Flask 를 설치한다.

$ pip install flask

간단한 첫 시작으로 ping endpoint 를 만들어 보았다. ping pong처럼 ping 엔드포인트를 호출하면 'pong' 이라고 응답하는 엔드포인트이다. 이렇게 단순한 엔드포인트는 보통 서버가 정상 운행되고 있는지 정지된 상태인지를 간단하게 확인할 때 사용된다. 이런 엔드포인트를 헬스체크(health check) 엔드포인트라 부른다. api 서버에 접속하지 않고 해당 api의 정상 운행 여부를 간단하게 체크하는 엔드포인트이다.


벌써부터 지금까지 배웠던 Django와는 전혀 다른 것 같은 느낌이다. 새로운 것을 또 배우게 된다니 설렌다😆
일단 위의 사진은 간단하게 ping 엔드포인트를 구현한 것이다.

  • Flask를 사용하려면 Flask를 import 해준다.
  • import 한 Flask 클래스를 객체화시켜서 app이라는 변수에 저장을 한다. app 의 변수에 api 설정과 엔드포인트들을 추가하면 api가 완성된다.
  • @app.route() 는 Flask에 내장된 데코레이터이다. 그 다음에 나오는 ping 함수를 엔드포인트 함수로 등록하였다. 고유주소는 ping 이고 HTTP 메소드는 GET 으로 등록한다.
  • 'pong' 이라는 텍스트를 리턴한다.

api를 실행한다.

$ FLASK_APP=app.py FLASK_DEBUG=1 flask run

  • FLASK_APP 환경변수에 FLASK 애플리케이션을 실행시키는 파일을 지정한다.
  • FLASK_DEBUG=1 은 디버그모드가 활성화된다.(코드 수정시 자동으로 재시작되어 자동반영됨)





    참고서적 - 깔끔한 파이썬 탄탄한 백엔드

profile
개발자꿈나무🌲

0개의 댓글