Fast API란?
- 공식문서 : https://fastapi.tiangolo.com/ko/
- 공식문서에 따르면 FastAPI는 현대적이고 빠른 파이썬 기반의 웹 프레임워크 라고 합니다.
- 빠른 것으로는 최근 많은 서비스에 사용되는 NodeJS, Go와 대등할 정도로 매우 높은 성능을 자랑한다고 합니다.
또한 Swagger를 기본적으로 제공하고있어 문서를 자동화할 수 있으며 테스트 또한 손쉽게 가능합니다.
Fast API 설치
- 기본적으로 python이 설치되어있는 개발환경을 기준으로 작성하였습니다.
$ pip install fastapi
$ pip install "uvicorn[standard]"
- 여기서 uvicorn은 fastapi를 구동하기 위한 웹서버입니다.
Fast API 기본예제
from typing import Union
from fastapi import FastAPI
app = FastAPI()
@app.get("/")
def read_root():
return {"Hello": "World"}
@app.get("/items/{item_id}")
def read_item(item_id: int, q: Union[str, None] = None):
return {"item_id": item_id, "q": q}
- main.py 파일을 만들고 간단한 get api 예제를 작성 후 웹 서버를 실행합니다.
- 서버실행
$ uvicorn main:app --reload
위 명령어 실행 시 웹 서버가 실행되며, --reload는 코드 변경 시 자동으로 적용 및 로딩이 되는 것이기 때문에 개발서버에서만 사용이 권장됩니다.
Swagger
- 웹 서버 실행 후 http://localhost:8000/docs 로 접속하면 자동으로 Swagger에 API 정보가 등록되어 있는 것을 확인할 수 있습니다.
- 또한 이 Swagger에서는 테스트를 지원하니 편하게 테스트가 가능합니다.
- 굉장히 빠르게 서버 구성이 가능하며 실행 또한 빠르고 직관적이며, 개발 또한 쉽게 할 수 있는 강력한 프레임워크라고 생각됩니다.
'Language > Python' 카테고리의 다른 글
[Python] FastAPI 사용하기 - DB Connection (0) | 2023.07.07 |
---|---|
[Python] FastAPI 사용하기 - 가상환경 , requirements.txt 설정 (0) | 2023.06.18 |