API web modernes avec FastAPI

FastAPI transforme vos annotations de type en validation, sérialisation et documentation gratuites. On part d'un seul endpoint pour arriver à une application complète et testée, avec base de données, authentification et temps réel, prête pour la production.

Durée : 3 jours · Niveau : intermédiaire

Pour qui : les développeurs Python souhaitant créer des API web modernes et performantes.

Prérequis : des connaissances solides en Python ; des notions de programmation asynchrone sont appréciées.

Modern web APIs with FastAPI

Jour 1 — API web avec FastAPI

  • FastAPI vs Flask vs Django
  • Installation et premier projet
  • Architecture ASGI et performances
  • Décorateurs de routes et méthodes HTTP
  • Path parameters et validation
  • Query parameters avec types
  • Request body avec Pydantic
  • Modèles Pydantic : schémas, imbrication et types personnalisés
  • Sérialisation et désérialisation
  • Status codes, response models, headers et cookies
  • HTTPException et handlers d'exceptions personnalisés
  • Documentation automatique

Jour 2 — Base de données et auth

  • SQLAlchemy avec FastAPI : configuration asynchrone
  • Modèles et schémas
  • Sessions et dépendances
  • Transactions
  • SQLModel, par le créateur de FastAPI
  • Requêtes asynchrones, relations et jointures
  • Migrations avec Alembic
  • Authentification via token vs cookies
  • Rate limiting
  • Configuration CORS
  • Protection CSRF pour les formulaires

Jour 3 — Applications et production

  • WebSockets : connexions temps réel
  • Broadcasting, rooms et channels
  • Exemple : une application de chat
  • Applications web HTML avec les templates Jinja2
  • Formulaires HTML
  • Files de tâches
  • Tests unitaires et d'intégration
  • Fichiers statiques
  • Mise en production

Passez au niveau supérieur en Python !