본문 바로가기
👨‍🏫Study/Python

[Python] FastAPI 학습

by 코푸는 개발자 2021. 8. 12.
728x90

FastAPI란?

파이썬으로 만들어진 웹프레임워크입니다.

파이썬으로 만들어지 대표적인 웹프레임워크로는 Django(다른 언어에 비해서 장고는 속도가 느렸음)가 있습니다.

 

파이참(PyCharm)을 활용하여 FastAPI를 사용합니다. (백엔드 API를 개발하는데는 어떤걸 사용하더라도 무리가 없음)

메일도 보내주고 스케줄링을 해주는 서버를 만들어 볼 것입니다.

notification-api 프로젝트를 만들어 사용하겠습니다.

new project 생성

 

new project를 생성했다면 FastAPI 공식홈페이지(https://fastapi.tiangolo.com/)에 나와있는 것처럼 설치를 진행해 보겠습니다.

  • mac기준 - 커맨드 + ,(콤마)
  • Window기준 - Ctrl + Alt + S 

위 단축키를 사용하여 Preferences 창을 켭니다. 

그리고 프로젝트에 Python Interpreter를 클릭해줍니다.

위 창에서 '+' 표시를 클릭해여 fastapi를 검색해줍니다.

fastapi 설치
uvicorn 설치

fastapi와 uvicorn을 설치해 줍니다.

이후 홈페이지에 있는 예시코드를 실행해봅니다.

예시코드)

from typing import Optional

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: Optional[str] = None):
    return {"item_id": item_id, "q": q}

실행코드

uvicorn main:app --reload

reload는 파일이 변경될 때마다 그것을 감지해서 계속 reload시켜주는 것입니다.

위 코드를 Terminal 창에 입력하여 실행해줍니다.

실행하고 127.0.0.1:8000 에 접속해 봅니다.

    위와같이 연될되었음을 알 수 있습니다.

 

OpenAPI Swagger 자동생성

http://127.0.0.1:8000/docs 를 입력하면 위와 같이 사용이 가능합니다.

728x90

'👨‍🏫Study > Python' 카테고리의 다른 글

[Python] FastAPI 시작  (0) 2021.08.08
[Python] 비동기(asyncio)  (0) 2021.08.07

댓글