FastAPI je nejrychlejší Python web framework. Automatická validace, OpenAPI docs, async support, type-safe.
Základní API¶
from fastapi import FastAPI, HTTPException from pydantic import BaseModel app = FastAPI() class Item(BaseModel): name: str price: float in_stock: bool = True items: dict[int, Item] = {} @app.post(“/items/”, status_code=201) async def create_item(item: Item) -> Item: item_id = len(items) + 1 items[item_id] = item return item @app.get(“/items/{item_id}”) async def get_item(item_id: int) -> Item: if item_id not in items: raise HTTPException(404, “Item not found”) return items[item_id]
Dependency Injection¶
from fastapi import Depends async def get_db(): db = SessionLocal() try: yield db finally: db.close() @app.get(“/users/{user_id}”) async def get_user(user_id: int, db: Session = Depends(get_db)): return db.query(User).filter(User.id == user_id).first()
Automatická dokumentace¶
FastAPI automaticky generuje OpenAPI (Swagger) na /docs a ReDoc na /redoc. Stačí spustit a otevřít v prohlížeči.
Klíčový takeaway¶
FastAPI = Pydantic validace + async + automatické docs. Pro nové Python API projekty jasná volba.