이 글은 Fast API 공식문서를 기반으로 학습한 내용들을 정리한 글이다
모든 학습 자료들은 아래 링크에서 찾아볼 수 있다
https://fastapi.tiangolo.com/

Fast API
Fast API 는 Python 기반의 웹 프레임워크이다. NodeJS와 GO에 뒤쳐지지 않는 속도로 유명하다. 후에 Django를 제치고 Python 웹 프레임워크 짱을 먹을 수도 있으니 기대하면서 공부하려고 한다. 아직 학습자료는 많이 없지만 공식문서가 정말 잘 되어있어서 충분히 학습이 가능하다.
설치 및 개발환경 구성
pip
현재 Mac OS에서 VSC로 개발 중이기 때문에 pip 부터 설치하며 시작한다.
pip3 -v
pip install —upgrade pip
버전 확인 후 최신 버전으로 pip를 설치해준다.
sudo easy-install pip
혹은 위 코드를 터미널에서 실행시켜 pip를 설치해줄 수 있다.
가상환경 venv
venv를 설치하여 프로그램이 구동되는 가상환경을 구성해준다.
python3 -m venv venv
source venv/bin/activate
설치 후 가상환경 활성화까지 해주면 가상환경 세팅은 완료된다.
deactivate
혹시 비활성화 하고 싶다면 다음 명령어를 실행시켜주면 된다.
Fast API, Uvicorn
Fast API와 서버를 담당하는 Uvicorn을 설치해준다.
pip install “fastapi[all]”
pip install uvicorn
이러면 모든 준비는 끝났다.
Hello World
시작은 늘 그렇듯 Hello World를 띄우며 시작해준다.
위에서 개발환경 세팅이 끝난 폴더 안에 main.py를 작성한다.
from fastapi import FastAPI
app = FastAPI()
@app.get("/")
async def root():
return { "message" : "Hello World"}
그리고 터미널에 아래 명령어를 쳐서 uvicorn 서버를 실행시켜준다.
uvicorn app.main:app --reload
위 명령어는 app 폴더 내에 있는 main.py를 실행하며, main 뒤에 명시되어 있는 app은 코드에서 app = FastAPI()를 의미한다.
router = FastAPI()로 코드를 변경하면 main:router로 명령어 또한 변경해야 실행될 것이다.
--reload는 코드가 변경될 때마다 서버가 재실행되어 변경사항을 바로 반영해줄 수 있게해준다.

http://127.0.0.1:8000 에 접속해서 get 요청을 하니 다음과 같이 Hello World를 띄워주는 것을 볼 수 있다.
'백엔드 > FastAPI' 카테고리의 다른 글
| [FastAPI] Pydantic이란? (0) | 2022.09.29 |
|---|---|
| [FastAPI] FastAPI 스터디 #3 (0) | 2022.09.29 |
| [FastAPI] FastAPI 스터디 #2 (0) | 2022.07.08 |