Tutti i percorsi
FastAPIIntermedio

FastAPI

Costruisci API moderne in Python con FastAPI: type hint, validazione con Pydantic, documentazione automatica, dependency injection, async e sicurezza. Completa il percorso da sviluppatore backend.

12 capitoli36 lezioni48 sfide

Programma del corso

Capitolo 1: Introduzione a FastAPI

  • Cos'è FastAPI
  • Avviare l'app: uvicorn e ASGI
  • Documentazione automatica

Capitolo 2: Path operations e routing

  • Metodi HTTP e path operations
  • Parametri di percorso (path parameters)
  • Ordine delle rotte: fisse prima di dinamiche

Capitolo 3: Query parameters e validazione

  • Query parameters
  • Opzionali e valori di default
  • Validazione con Query()

Capitolo 4: Request body e Pydantic

  • Modelli Pydantic (BaseModel)
  • Ricevere il body in un endpoint
  • Campi opzionali e modelli annidati

Capitolo 5: Response model e status code

  • response_model: forma e filtro dell'output
  • status_code: il codice di stato giusto
  • Modelli separati: input vs output

Capitolo 6: Validazione avanzata con Pydantic

  • Field(): vincoli e metadati
  • Validatori personalizzati
  • Tipi speciali (EmailStr, vincolati)

Capitolo 7: Dependency Injection

  • Cos'è una dependency: Depends()
  • Dipendenze riutilizzabili
  • Dependency con yield (setup/teardown)

Capitolo 8: Autenticazione e sicurezza

  • OAuth2 con Bearer token
  • Hashing delle password e JWT
  • Proteggere un endpoint

Capitolo 9: Database con SQLAlchemy

  • Engine e sessione
  • Modelli ORM e CRUD
  • Da ORM a Pydantic (from_attributes)

Capitolo 10: Gestione degli errori

  • HTTPException
  • Errori di validazione (422)
  • Exception handler personalizzati

Capitolo 11: Async, middleware e background tasks

  • async def negli endpoint
  • Middleware
  • Background tasks

Capitolo 12: Testing e deploy

  • Test con TestClient
  • Struttura del progetto: APIRouter
  • Deploy in produzione

Pronto a salire di livello?

Crea un account gratuito e inizia subito: guadagni XP a ogni sfida e scali la classifica.

FastAPI — LevelUpCode