Python Flask를 이용해서 REST 서비스를 구현해 보겠습니다.
먼저 Python 3.x가 설치되어 있다고 가정하고 진행해 보겠습니다.
Python 의 가상환경을 이용할 예정이며, 테스트 환경은 Windows 10 이지만, OS 의 영향이 거의 없을 듯 합니다.
Python 의 가상환경은 가상으로 isolated 된 실행 환경을 생성해 주며, 각 환경 별로 다른 모듈을 설치하여 실행할 수 있게 해줍니다.
프로젝트 실행 위치를 myApp 폴더라고 가정하겠습니다.
명령프롬프트를 사용해서 해당 위치로 이동후에 아래 명령어로 가상환경을 생성합니다.
> python3 -m venv venv
마지막의 venv는 가상환경이 생성되는 경로이기 때문에 원하시는 폴더로 변경해서 지정할 수 있습니다.
가상환경을 실행합니다. (윈도우)
> venv\Scripts\activate
맥OS나 리눅스에서는 다음과 같이 실행합니다.
$ source venv/bin/activate
참고로 가상환경을 종료할 때는 deactivate 명령어를 입력하면 됩니다.
실행후에는 명령프롬프트 앞쪽에 가상환경에 대한 정보가 나타납니다.
(venv) >
Flask 모듈을 설치합니다.
(venv) > pip3 install flask
간단한 Flask 앱을 만들어 보겠습니다.
먼저 app.py 파일을 생성해서 편집기로 열고 다음과 같이 입력합니다.
from flask import Flask
app = Flask(__name__)
@app.route("/")
def hello_world():
return '<p>Hello World</p>'
그리고 가상환경의 명령프롬프트에서 다음과 같이 입력합니다. (윈도우)
> set FLASK_APP=app
> flask run
맥OS나 리눅스라면 다음과 같이 입력합니다.
$ export FLASK_APP=app
$ flask run
실행시키면 어떤 포트에서 실행 중인지에 대한 정보가 화면에 나타납니다. 참고로 default 는 5000포트인데, 맥에서는 AirPlay Receiver 서비스가 해당 포트를 사용중이기 때문에, 서비스를 중지시키거나 다른 포트를 사용해야 합니다.
Monterey 에서 서비스 중지시키는 방법:
System Preferences > Sharing > AirPlay Receiver 체크 해제
포트 지정은 -p 옵션을 사용합니다.
$ flask run -p 4999
웹 브라우저를 열어 아래 주소를 입력해서 결과를 확인해 봅니다.
http://localhost:5000
브라우저에 Hello World 라고 나오면 성공입니다.
'프로그래밍 > Python - Flask' 카테고리의 다른 글
Python Flask를 이용해서 REST 서비스 구현하기 4 - request with data (0) | 2022.02.12 |
---|---|
Python Flask를 이용해서 REST 서비스 구현하기 3 - request method (0) | 2022.02.12 |
Python Flask를 이용해서 REST 서비스 구현하기 2 - 경로 추가 (0) | 2022.01.14 |