on
[Flask] Flask는 무엇인가? + Flask 기초
[Flask] Flask는 무엇인가? + Flask 기초
728x90
1. Flask란?
Flask는 파이썬 기반 웹 프레임워크중 하나이다. 자바가 아닌 파이썬으로도 웹 서버를 만들 수 있다는 의미이다.
자바 기반 웹 프레임워크로는 대표적으로 Spring이 있듯이, 파이썬 기반 웹 프레임 워크로는 대표적으로 Flask, Django가 있는 것이다.
2. Flask는 언제 쓰이는가?
앞에서 언급했듯이, 파이썬 기반으로 웹 개발을 하고싶을 때 사용할 수 있다. 파이썬이 back-end쪽을 담당하고 HTML, CSS, JAVASCRIPT이 Front-end쪽을 담당하게 하는식으로 구현하여 웹 프로젝트를 수행할 수 있다.
이미지, 영상처리, AI 관련 프로그램을 개발하는데에는 파이썬이 많은 사랑을 받고 있는데, 파이썬으로 성능 좋고 빠른 훌륭한 라이브러리들을 많이 접할 수 있기 때문이다. Spring같은 다른 언어 기반의 웹 프레임워크로 주로 서비스를 하다가 특정 이미지나 영상은 파이썬 코드로 따로 처리하고자 하는 경우에 유용하게 쓰일 것이다. Spring 서버에서 Flask 서버로 파일을 전송하면 Flask 서버에서 해당 파일을 받아 파이썬 코드로 원하는대로 처리해주고, 다시 Spring 서버로 돌아오는 식으로 진행이 가능한 것이다.
단독 서버도 되고 다른 언어 기반의 서버와 연동도 가능하다니 훌륭하지 않은가?
3. 기본 애플리케이션
파이썬 프로젝트 경로에서 Flask를 설치하기 위해 다음 명령어를 사용하면 된다.
pip install flask
Flask 설치를 완료했다면 간단한 소스코드로 웹 서버를 실행할 수 있다.
from flask import Flask app = Flask(__name__) @app.route('/') def hello_world(): return 'Hello World!' if __name__ == '__main__': app.run()
app이 Flask 애플리케이션이며, @app.route('/') 아래에 있는 메소드는 애플리케이션의 최상위 주소로 접속 했을 때 동작한다. 즉, http://localhost:5000/ 으로 접속하면 애플리케이션에서 hello_world() 메소드가 실행되어 웹 페이지에는 Hello World! 라는 문구가 찍혀 나오게 된다. 기본 포트 번호는 5000이며 따로 설정도 가능하다.
'__name__' 은 이 소스코드가 실행되는 파일명을 의미하며, '__main__'은 메인으로 실행되는 파일명을 의미한다.
직접 파이썬 명령어를 통해 실행된다면 해당 파일의 __name__은 '__main__'이 되는 것이다.
인터프리터에서 파이썬 명령어로 실행
py 파일명.py
즉 8~9번째 줄에 해당하는 내용은 직접 메인으로 실행될 경우에만 애플리케이션을 실행하라는 의미가 되는 것이다.
http://localhost:5000/ 접속
728x90
from http://kimcoder.tistory.com/254 by ccl(A) rewrite - 2021-02-18 01:00:42