반응형
Fast API

FastAPI는 Python을 사용하여 웹 API를 빠르게 구축하기 위한 웹 프레임워크입니다.

대규모 및 고성능 응용 프로그램에서 사용하기 적합합니다.

이 프레임워크는 비동기 및 병렬처리를 지원하여 빠르고 효율적인 API를 구축할 수 있도록 합니다.

FastAPI의 주요 특징

  1. 빠르고 효율적인 처리: FastAPI는 asyncio 및 Pydantic과 같은 최신 Python 패키지를 사용하여 높은 처리 속도와 효율성을 제공합니다.
  2. API 문서 자동 생성: FastAPI는 Swagger UI와 같은 도구를 사용하여 API 문서를 자동으로 생성할 수 있습니다.
  3. 쉬운 구현: FastAPI는 간단한 구문과 명시적인 타입 힌트를 사용하여 API를 구현할 수 있습니다. 이를 통해 코드 작성과 디버깅이 쉬워집니다.
  4. Pydantic 지원: FastAPI는 Pydantic 모듈을 사용하여 데이터 유효성 검사와 시리얼라이즈를 자동으로 처리할 수 있습니다.
  5. 의존성 주입: FastAPI는 의존성 주입(Dependency Injection)을 지원합니다. 이를 통해 코드를 더욱 모듈화하고 재사용성을 높일 수 있습니다.

FastAPI 사용

먼저, FastAPI를 설치합니다.

pip install fastapi

추가로 서버 역할을 하는 uvicorn을 설치합니다.

pip install uvicorn

다음으로, main.py 파일을 생성하고 아래 코드를 추가합니다.

from fastapi import FastAPI

app = FastAPI()

@app.get("/")
async def read_root():
    return {"Hello": "World"}

위 코드에서는 FastAPI의 FastAPI 클래스를 사용하여 어플리케이션 객체를 생성합니다. 그리고 @app.get("/") 데코레이터를 사용하여 루트 엔드포인트에 대한 GET 요청을 처리하는 함수를 정의합니다. 이 함수는 비동기 함수이며, JSON 형식의 응답을 반환합니다.

 

마지막으로, 다음 명령어를 사용하여 서버를 실행합니다.

uvicorn main:app --reload

위 명령어에서 main은 파일 이름, app은 어플리케이션 객체를 가리킵니다. --reload 옵션은 코드가 변경될 때 서버를 자동으로 다시 시작하도록 해줍니다.

이제 http://localhost:8000/으로 접속하여 "Hello World" 메시지를 확인할 수 있습니다. 이것은 FastAPI에서 기본적으로 제공하는 Swagger UI와 함께 확인할 수 있습니다.

반응형

+ Recent posts