Master Pro Réseaux Informatique
et Multimédia (RIM)
2022-2023
PROGRAMMATION DISTRUBUEE
TP IV : Mise en œuvre : Web Service API REST
Enseignant : OUEDRAOGO Ablassé
[email protected] / +226 70 47 04 18/ 76 59 13 72
https://www.linkedin.com/in/ablass%C3%A9-ouedraogo-780679118
TP API REST IST 1
Table des matières
I. Identifier et tester une API REST ................................................................................................... 3
1. Rechercher une API REST ............................................................................................................ 3
2. Test d’API REST avec Postman ................................................................................................... 3
EXERCICE 1 : Test d’API REST ............................................................................................................. 6
II. Concevoir une API.......................................................................................................................... 6
1. L’expression et analyse des besoins ............................................................................................. 6
2. La documentation ........................................................................................................................... 6
3. Construction des Endpoint............................................................................................................ 7
III. Réalisation de l'API ....................................................................................................................... 7
1. Choisir un Framework ................................................................................................................... 7
2. Mettre en place l’environnement de développement ................................................................. 7
3. Coder l’API ...................................................................................................................................... 7
4. Tester l’API ..................................................................................................................................... 7
IV. Publier l’API.................................................................................................................................... 8
V. Quelques conseils pratiques .............................................................................................................. 8
EXERCICE 2 : Développement d’API REST .......................................................................................... 8
TP API REST IST 2
I. Identifier et tester une API REST
1. Rechercher une API REST
Des sites spécialisés tels que Open APIs, AnyAPI, Public APIs, RapidAPI, vont vous
aider à retrouver des APIs REST intéressantes qui sont destinées aux personnes
souhaitant développer un module supplémentaire pour son application. Il faut noter que
certaines de ces APIs nécessitent l’ouverture d’un compte auprès du fournisseur afin de
pouvoir bénéficier des informations d’authentification nécessaires pour la consommation
de leurs ressources.
2. Test d’API REST avec Postman
Sur le marché, de nombreux logiciels permettent de tester les API. Le plus courant est
Postman.
Postman est une application permettant de tester des API, créée en 2012 par Abhinav
Asthana, Ankit Sobti et Abhijit Kane2 à Bangalore pour répondre à une problématique de
test d'API partageable.
Vous pouvez l’utiliser quel que soit le langage de programmation ;
Son interface utilisateur est simple : vous effectuez vos requêtes facilement.
Vous n’avez pas besoin de savoir coder, ou d’utiliser une application.
- Télécharger et installer Postman
Cliquer sur ce lien pour télécharger Postman : https://www.postman.com/downloads
TP API REST IST 3
- Formulez une requête sur Postman
Chaque requête a une structure spécifique qui a cette forme :
Verbe HTTP + URI + Version HTTP + Headers + Body (facultatif)
TP API REST IST 4
La première ligne (encadrée en noir) vous permet de sélectionner votre type de requête
dans le menu déroulant (dans notre cas, ce sera GET).
À côté, vous pouvez remplir la case avec l’URL complète de votre requête.
Il y a un petit bouton (encadré en rouge) nommé Params. Si vous cliquez dessus, vous
aurez un emplacement pour définir les valeurs clés de vos paramètres.
À droite (encadré en bleu), vous pouvez cliquer sur Headers. Cela vous permettra de
définir vos headers de requête.
Et pour finir, en dessous, en jaune, vous pouvez voir l’emplacement du body de votre
réponse.
- Obtenez une réponse avec Postman
Le format du message de réponse est très similaire à celui de la requête :
Version HTTP + Code de réponse HTTP + Headers + Body
Code d’erreurs HTTP
TP API REST IST 5
100+ ➡ Information
200+ ➡ Succès
300+ ➡ Redirection
400+ ➡ Erreur client
500+ ➡ Erreur serveur
EXERCICE 1 : Test d’API REST
Choisir une API REST sur les sites spécialisés (Open APIs, AnyAPI, ….) et tester
ses fonctionnalités avec Postman.
II. Concevoir une API
La mise en place d'une API, est comme la mise en place d'un projet informatique. Vous
devez respecter certaines étapes pour optimiser le temps de développement et de mise en
ligne de l’API.
1. L’expression et analyse des besoins
Analyser le cahier des charges, c'est-à-dire analyser et comprendre le besoin. Traduire le
besoin sous forme de fonctionnalité.
Comment vais-je construire mon API ? REST ou SOAP ? Quelles ressources je mets à
disposition avec mon API ?
Vérifiez que l’API n’existe pas. Avant de vous lancer dans la conception, jetez un œil sur
le web pour être sûr que l'API que vous voulez concevoir n'existe pas déjà !
Organisez vos données
Définissez les ressources
Liez les ressources entre elles
2. La documentation
En premier, pensez à la documentation que vous devriez fournir avec l’API REST en
question. En effet, il est important de bien documenter l’interface de développement afin
que ceux qui vont l’utiliser puissent facilement se retrouver. Vous devez retenir qu’il n’y
aura pas que vous qui allez vous en servir. Dans cette documentation, vous devez spécifier
tous les Endpoint et ce à quoi ils correspondent, les différents paramètres à inclure pour
TP API REST IST 6
pouvoir obtenir des réponses ainsi que des exemples de réponses possibles pour chaque
requête. Une documentation sur les erreurs qui sont susceptibles de se produire est
également nécessaire.
3. Construction des Endpoint
Écrire chaque fonctionnalité sous la forme d'une URL et créer les endpoints
Et en parlant des Endpoint, il est également important de les définir au préalable pour
que vous puissiez visualiser dès le départ le rendu de votre API. Définissez les possibilités
que vous souhaitez offrir aux utilisateurs, à savoir l’ajout, la modification, la mise à jour
ou encore la suppression. En effet, il se peut que, pour une ressource donnée, toutes ces
méthodes ne soient pas nécessaires ou, du moins, facultatives.
III. Réalisation de l'API
1. Choisir un Framework
Il existe plusieurs Frameworks basés sur de nombreux langages de programmation vers
lesquels vous pouvez vous orienter. Il y a par exemple :
Spring de Java ;
Express.js basé sur Node.js ;
Ruby on Rails de Ruby ;
Django et Flask de Python ;
2. Mettre en place l’environnement de développement
Installez et configurez les outils nécessaires pour le développement de l’API en fonction
du Framework choisi.
3. Coder l’API
Une fois que vous avez bien préparé votre projet, vous pouvez maintenant commencer à
coder les fonctionnalités de l’API, c'est-à-dire écrire des programmes informatiques
permettant de réaliser les fonctionnalités.
4. Tester l’API
Une fois développée, toutes les fonctionnalités de l’API doivent être tester pour s’assurer
de leur fiabilité et de leur sécurité.
TP API REST IST 7
IV. Publier l’API
Une fois développée et testée, l’API doit être publiée en ligne pour être accessible.
V. Quelques conseils pratiques
- Une API est pour un client. Elle doit proposer des fonctions simples et évolutives.
- L'API doit être sécurisée (basique, clé d'API, OAuth).
- Préférez les noms concrets pour décrire vos ressources, évitez les verbes !
- Utilisez des minuscules pour le nommage des endpoints.
- L'API doit être documentée et illustrée par des exemples
- Faites un cahier de test pour assurer la qualité de l'API lors de la sortie de nouvelles
versions ou mises à jour, par exemple.
- Vérifiez que chaque résultat de requête est géré (succès ou échec).
- Vérifiez que chaque résultat de requête renvoie la bonne ressource ou réalise la
bonne action.
EXERCICE 2 : Développement d’API REST
Créer une API REST qui permet de gérer les cours de l’IST (Consulter, Créer,
modifier, supprimer …).
Créer un client qui consomme cette API.
TP API REST IST 8