Les mots représentés comme ceci sont disponibles dans la page lexique.

Il existe plusieurs types d’API: REST, SOAP et XML-RPC / JSON-RPC . J’ai exclusivement travaillé avec l’api REST. REST est un style d’architecture logicielle définissant un ensemble de contraintes à utiliser pour créer des services web. Cela permet donc de transférer des données d’un émetteur à un destinataire.

Contexte d'utilisation

J’ai utilisé les API REST tout le long de mon stage et de mon alternance. Utilisant un framework pour le coté serveur et un autre pour le coté client, il a fallut instaurer une communication entre les deux.

Les API utilisent ce qu’on appelle communément le CRUD: Create, Read, Update, Delete (en français: Création, Lecture, Modification, Suppression).

Avec Django, il existe Django Rest Framework, qui met en place des services web et permet donc l’utilisation d’API REST directement depuis Django. Les API REST utilisent des url pour pouvoir être appelées et ont des méthodes HTTP (qui ont une grande importance) afin de préciser dans quel périmètre elles sont appelées.
Dans une utilisation typique, nous allons faire deux requêtes d’API avec une même url mais deux méthodes HTTP différentes. La première avec une méthode dite GET et la seconde avec une méthode dite POST. Dans le premier cas, nous voulons récupérer les données depuis la base de données (seulement faire une lecture, c’est le R du CRUD un peu plus haut), et dans le second cas, nous voulons créer une nouvelle donnée dans la base (le C du CRUD). Les programmes exécutés seront différents pourtant l’url est exactement la même, d’où l’importance de la méthode HTTP.

Mon autocritique

Je connaissais déjà le principe des API REST mais je n’en avais encore jamais créer de toutes pièces. Django Rest Framework et Django permettent d’en créer très facilement et très rapidement, J’ai appris à en faire assez vite.
C’est un élément central dans ma programmation au jour le jour.

Pour savoir comment les utiliser, je conseillerai de commencer par la partie théorique afin de bien comprendre les différents flux HTTP, et ensuite de passer à la pratique.

Conclusion

Je travaille avec les API REST chaque jour. C’est un des moyens les plus courants dans le monde du web pour faire la communication entre deux applications.

Je ne prévois pas de formation particulière sur les API REST à l’avenir.

Réalisations associées