SeouliteLab

[Python/파이썬] FastAPI: 빠르고 간편한 웹 API 개발 프레임워크 본문

프로그래밍

[Python/파이썬] FastAPI: 빠르고 간편한 웹 API 개발 프레임워크

Seoulite Lab 2024. 3. 19. 11:32

Python FastAPI는 빠르고 현대적인 웹 API를 개발하기 위한 프레임워크입니다. FastAPI는 높은 성능과 사용자 친화적인 개발 경험을 제공하며, Python의 강력한 기능과 혁신적인 타입 힌팅을 결합하여 개발자들이 안정적이고 확장 가능한 API를 빠르게 구축할 수 있습니다.

1. FastAPI 소개

FastAPI는 Starlette 웹 프레임워크를 기반으로 하며, Python 3.7 이상에서 비동기적으로 작동합니다. FastAPI는 OpenAPI 및 JSON Schema를 지원하여 API 문서를 자동으로 생성하고 유효성을 검사하는 기능을 제공합니다.

2. FastAPI 예제

예제 1: Hello World

from fastapi import FastAPI

app = FastAPI()

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

위 예제는 가장 간단한 형태의 FastAPI 애플리케이션을 보여줍니다. 루트 엔드포인트로 접속하면 "Hello, World" 메시지를 반환합니다.

예제 2: Path Parameter

from fastapi import FastAPI

app = FastAPI()

@app.get("/items/{item_id}")
async def read_item(item_id: int):
    return {"item_id": item_id}

위 예제는 경로 매개변수를 받아들이는 간단한 엔드포인트를 보여줍니다. "/items/{item_id}" 경로에 접속하면 해당하는 item_id를 반환합니다.

예제 3: Query Parameter

from fastapi import FastAPI

app = FastAPI()

@app.get("/items/")
async def read_item(skip: int = 0, limit: int = 10):
    return {"skip": skip, "limit": limit}

위 예제는 쿼리 매개변수를 받아들이는 엔드포인트를 보여줍니다. "/items/" 경로에 접속하면 기본적으로 skip=0, limit=10을 반환하며, 쿼리 매개변수를 통해 값을 변경할 수 있습니다.