Plan du cours

Introduction

  • FastAPI vs Django vs Flask
  • Aperçu des fonctionnalités et des avantages de FastAPI

Pour commencer

  • Installation de FastAPI
  • Définition d'un schéma à l'aide d'OpenAPI

Paramètres de chemin d'accès et de requête

  • Déclaration des types de paramètres de chemin
  • Analyse et validation des données
  • Déclaration des paramètres requis et facultatifs
  • Conversion des types de paramètres de requête
  • Plusieurs paramètres de chemin et de requête

Déclarer un corps de requête avec des modèles pydantiques

  • Création d'un modèle de données
  • Combinaison des paramètres de chemin, de requête et du corps
  • Déclaration des validations et des métadonnées
  • Utilisation de modèles profondément imbriqués
  • Définition de données d'exemple
  • Modèles de réponse et supplémentaires

Définition des formulaires et des fichiers

  • Utilisation des champs de formulaire au lieu de JSON
  • Création de paramètres de fichier
  • Utilisation des paramètres de fichier et de formulaire

Traitement des erreurs

  • Utilisation de HTTPException
  • Ajout d'en-têtes personnalisés
  • Installation de gestionnaires d'exceptions personnalisés
  • Remplacement des gestionnaires d'exceptions par défaut

Travailler avec des Databases

  • ORM et structure de fichiers
  • Création de parties SQLAlchemy
  • Création de modèles de base de données
  • Création de modèles Pydantic
  • Effectuer des opérations CRUD
  • Création de tables, de dépendances et d'opérations de chemin
  • Examen et vérification des fichiers
  • Interaction avec la base de données

Sécurité et authentification

  • Utilisation d'Oauth2 et d'OpenID connect
  • Définition de plusieurs schémas de sécurité avec OpenAPI
  • Utilisation des utilitaires FastAPI

Déploiements

  • Concepts, étapes et outils de déploiement
  • Utilisation de Gunicorn et d'Uvicorn
  • Utilisation de systèmes conteneurisés (Docker et Kubernetes)

Dépannage

Résumé et prochaines étapes

Pré requis

  • Une compréhension des concepts d'API
  • Expérience en programmation Python

Public

  • Développeurs
 14 Heures

Nombre de participants


Prix par participant

Nos clients témoignent (4)

Cours à venir

Catégories Similaires


Fatal error: Uncaught TypeError: _isl_get_excluded_site(): Return value must be of type ?array, none returned in /apps/hitra7/backdrop/modules/_custom/frontend/islc7/isl_common.inc:38 Stack trace: #0 /apps/hitra7/backdrop/modules/_custom/frontend/islc7/isl_common.inc(30): _isl_get_excluded_site() #1 /apps/hitra7/backdrop/modules/_custom/frontend/islc7/isl_common.inc(17): isl_get_excluded_site() #2 /apps/hitra7/backdrop/modules/_custom/frontend/islc7/islc7.module(51): get_outline_isls() #3 /apps/hitra7/backdrop/modules/_custom/frontend/islc7/islc7.module(7): islc_prepare_links() #4 /apps/hitra7/npfrontend/nptemplates/default.php(272): islc7_sites_links_array_v3() #5 /apps/hitra7/npfrontend/modules/course/course.php(143): require_once('...') #6 /apps/hitra7/npfrontend/core/routes.php(15): course_menu_callback() #7 /apps/hitra7/npfrontend/__index.php(81): require_once('...') #8 /apps/hitra7/npfrontend/index.php(15): include_once('...') #9 /apps/hitra7/index.php(66): include_once('...') #10 {main} thrown in /apps/hitra7/backdrop/modules/_custom/frontend/islc7/isl_common.inc on line 38