Dans ce cours, vous verrez comment développer des Web Services REST avec le langage Python. La première approche est basée sur des composants et des librairies internes. La seconde par le biais de Django Rest Framework, permet de développer rapidement et avec robustesse des API fonctionnelles.
Inter
Intra
Sur mesure
Cours pratique en présentiel ou en classe à distance
Formation dans vos locaux, chez nous ou à distance
Réf. CZT
2j - 14
Vous souhaitez transposer cette formation, sans modification, pour votre entreprise ?
Formation à la carte
Vous souhaitez une formation adaptée aux spécificités de votre entreprise et de vos équipes ? Nos experts construisent votre formation sur mesure !
Dans ce cours, vous verrez comment développer des Web Services REST avec le langage Python. La première approche est basée sur des composants et des librairies internes. La seconde par le biais de Django Rest Framework, permet de développer rapidement et avec robustesse des API fonctionnelles.
Objectifs pédagogiques
À l’issue de la formation, le participant sera en mesure de :
Appréhender les principes des web services REST
Manipuler des données JSON
Développer des APIs REST avec Django REST Framework
Sécuriser des services Web
Public concerné
Développeurs, ingénieurs, chefs de projets proches du développement.
Prérequis
Bonne connaissance du Web, expérience requise en programmation en Python.
Vérifiez que vous avez les prérequis nécessaires pour profiter pleinement de cette formation en faisantce test.
Programme de la formation
Les rappels Python
Les variable & les typages.
Comprendre les collections avec les listes, tuples et dictionnaires.
La portée des variables et les références.
Optimisez vos fonctions avec les paramètres nommés.
Les rappels des classes en Python.
Travaux pratiques
Création d'une classe Python et instanciation d'objet.
Les fondamentaux des Web Services
Le rôle des Web Services et leur utilisation.
Les architectures n-tiers.
Qu'est-ce qu'un Web Service ? Objectif, principe.
Comparatif entre SOAP et REST.
Le rôle de XML et JSON.
Travaux pratiques
Exemples d'applications, comment invoquer un Web Service ?
Création d'une API RESTful
Composants et librairies pour faciliter la mise en place de l'API.
Démarche générale.
Création du système de routing.
Définir le format d'échange.
Mise en place de middlewares.
API REST avec Django Rest framework
Présentation Django REST Framework et installation.
Les vues basées sur des classes.
Les vues génériques.
Les sérialiseurs.
L'ajout d'une App : Django Debug Toolbar.
L'optimisation des accès aux données.
Travaux pratiques
Création d'une première API simple avec Django REST Framework.
Sécurisation du serveur
Authentification et permissions d'accès.
Authentification globale ou authentification par vue.
Mise en place des JSON Web Tokens avec Simple JWT.
Travaux pratiques
Gestion des authentifications et des permissions d'accès.
Déploiement des webservices REST sur un serveur Linux
Gunicorn, exemple de serveur WSGI en pur Python pour Unix.
Consommation par des frameworks frontend utilisant AJAX (Angular, React, Vue).
Protection contre les CSRF (Cross Site Request Forgery).
En-têtes CORS (Cross-Origin Resource Sharing).
Modalités d'évaluation
Le formateur évalue la progression pédagogique du participant tout au long de la formation au moyen de QCM, mises en situation, travaux pratiques…
Le participant complète également un test de positionnement en amont et en aval pour valider les compétences acquises.
Avis clients
4 / 5
Les avis clients sont issus des évaluations de fin de formation. La note est calculée à partir de l’ensemble des évaluations datant de moins de 12 mois. Seules celles avec un commentaire textuel sont affichées.
YANNICK G.
26/02/24
4 / 5
Contenu intéressant avec une bonne répartition entre théorie et pratique. Le contenu des slides du support est un peu succinct, mais le formateur nous permet de bien comprendre les différents points.
Le contenu est dense et le sujet complexe, ça fait beaucoup d’informations. Mais ça permet d’avoir des bases et de pouvoir pratiquer par la suite.
VINCENT M.
26/02/24
4 / 5
Contenu riche mais bien présenté. J’ai appris beaucoup de choses sans avoir l’impression d’être perdu.
LOÏC P.
26/02/24
5 / 5
Formateur à l’écoute et très pédagogue. Cependant, il manque du temps dans la formation pour appliquer les concepts sur un cas plus complet. De plus, les rappels Python (une demi-journée) devraient être évités.
JOSIAS JEMUEL G.
30/10/23
5 / 5
La formation était qualitative et très intéressante. Le formateur a été très pédagogue et l’écoute.
ARNAUD L.
30/10/23
3 / 5
Un déséquilibre trop important entre théorie et pratique, et un contenu beaucoup trop dense qui amène à survoler des points pourtant importants. Il faudrait soit rajouter une journée, soit enlever une bonne partie des rappels pour vraiment se concentrer sur le sujet et pratiquer plus.
ALBERT M.
30/10/23
4 / 5
pas assez de temps pour voir en détail les points abordés
CHRISTOPHE B.
21/11/22
5 / 5
Le cours était très agréable à suivre et la formatrice très pédagogue, n’hésitant pas à revenir sur des aspects déjà abordés en cas de soucis.
ANAS M.
21/11/22
4 / 5
un support avec les exos fait pour réviser serait un plus.