De la théorie à la pratique, nous allons aborder l’ensemble des sujets centraux nécessaires au développement d’une API REST avec PHP et Symfony. Nous allons développer ensemble une API complète de gestion d’articles en examinant les problématiques auxquelles vous serez susceptibles d’être confrontés dans le monde professionnel.
Objectifs du cours :Respecter les contraintes de REST et les règles du modèle de maturité de RichardsonExposer une API REST avec SymfonySérialisation et désérialisation de ressourcesAuthentification et autorisation dans le contexte d’une API RESTProduire une documentation technique d’API
Intervenants
Sarah Khalil
Auteur sur le parcours Dévelopeur d’Application spécialisation PHP / Symfony chez OpenClassrooms.
Durée
3 semaines
Vous pouvez vous inscrire à ce cours à n’importe quel moment de l’année… Le cours est disponible directement sur la plateforme OpenClassrooms 365 jours par an, 24/7, sur tous supports (PC, MAC, tablette, mobile).
Vous pouvez également choisir de suivre les cours selon un rythme prédéfini par la plateforme (1 semaine par partie) ou bien sans rythme, sans contrainte de temps et organiser vous-même une progression régulière..
Le rythme d’une semaine par partie permet un avancement régulier en fixant des dates limites sur le rendu des devoirs. L’avancement du cours sans rythme vous permet quant à lui une grande flexibilité, car vous pouvez réaliser vos exercices à tout moment.
Cette formation est ouverte toute l’année.
Prérequis
Prérequis
Il vous faut avoir suivi le cours Développez votre site web avec le framework Symfony. Le concept d’API vous est totalement inconnu ? Jetez un coup d’œil à au cours « Utilisez des API REST dans vos projets web » pour vous familiariser avec le concept d’API REST avant de vous lancer dans sa construction.
Charge de travail
50 heures
Coût
Gratuit
Certification
Vous devez compléter tous les exercices du cours et obtenir une note finale d’au moins 70% pour obtenir votre certification !
Un compte OpenClassrooms Premium Solo (20€ / mois) est nécessaire pour valider votre certification.
Déroulement
Chaque cours est composé d’une ou plusieurs parties et peut comporter du texte, des images (schéma, illustration) et des vidéos. Les vidéos des cours durent 10 minutes maximum, avec une moyenne de 3-4 minutes. Elles sont visualisables à tout moment sur OpenClassrooms et téléchargeables en haute définition.
Chaque partie d’un cours certifiant est ponctuée d’exercices de 2 types :
– des quiz corrigés automatiquement
– des devoirs libres (exemple : créer un site web avec des consignes précises).Ces devoirs sont évalués par les pairs. Chaque devoir est corrigé 3 fois par 3 autres élèves, dans un processus en double aveugle, selon un barème fixé par le professeur. La note finale est la moyenne des 3 notes reçues sur le devoir.
Si vous rencontrez des difficultés, pas de panique ! Vous pouvez à tout moment obtenir de l’aide sur les forums.
Programme
Partie 1 – Qu’est-ce que REST ?
1. Une architecture, pas un protocole
2. Le rôle de Symfony
3. Les outils indispensables à tout bon développeur d’API
4. Introduction à la sérialisation avec JMSSerializer
5. Allez plus loin avec JMSSerializer
6. La sérialisation avec le composant Serializer de Symfony
Quiz : Partie 1
Partie 2 – Organiser l’ensemble de son application Symfony grâce au FOSRestBundle
1. Premiers pas avec le FOSRestBundle
2. La sérialisation
3. La désérialisation
4. Tutoriel – Paginez une liste de ressources
5. Validez des ressources
6. Gestion des erreurs
7. Tutoriel – Gestion d’erreurs via un listener sur l’évènement kernel.exception
Quiz : Partie 2
Activité : Terminez le CRUD de gestion d’articles
Partie 3 – Aller plus loin
1. Rendez votre API auto découvrable (dernier niveau du modèle de maturité de Richardson)
2. Versionnez votre API
3. Communiquez avec d’autres APIs
4. Tutoriel – Authentifier et autoriser les utilisateurs de l’API
5. Documentez votre API
6. Conclusion
Quiz : Partie 3
Certificat de réussite
Plateforme
OpenClassrooms
Une technologie issue du projet Open Source CLAIRE (Community Learning through Adaptive and Interactive multichannel Resources for Education) développé conjointement par OpenClassrooms (ex : Simple IT / Site du zéro), le laboratoire LIRIS (équipe Silex), et INRIA Grenoble (équipe WAM)