Le Representational State Transfer est un style d'architecture créé par Roy Fielding en 2000 pour la conception d'applications couplées via HTTP et est souvent utilisé dans le développement d'API. Pour qu'un service soit qualifié de RESTful, il ne doit pas enfreindre ces contraintes.
Les développeurs préfèrent utiliser REST plutôt que SOAP, car il ne nécessite pas d'écrire beaucoup de code pour accomplir des tâches simples, contrairement à SOAP, qui vous oblige à créer la structure XML requise à chaque fois. Un service web RESTful utilise une approche différente. Il traite l'information comme une ressource représentée par une URL unique. Ainsi, si vous souhaitez demander une certaine ressource, vous devrez fournir son URL en utilisant des méthodes HTTP telles que GET, POST, PUT, HEAD, DELETE, PATCH et OPTIONS. Vous pouvez en savoir plus sur ces méthodes ici ! Parfois, vous devrez peut-être envoyer des données supplémentaires avec l'URL afin d'obtenir ce dont vous avez besoin, comme une clé d'accès.
Contrairement à SOAP, REST ne se limite pas à l'utilisation du format XML pour fournir la réponse. Vous pouvez obtenir les informations dans différents formats tels que JSON, XML, CSV, texte brut et HTML, qui sont plus faciles à analyser en fonction du langage que vous utilisez pour votre application.
Voici une comparaison entre JSON et XML :
Vous entendrez souvent les développeurs parler des fonctionnalités des différentes API, mais il existe un autre aspect important, moins souvent abordé : la documentation. Sans les connaissances qu'elle contient, une API pourrait tout aussi bien être un ensemble de hiéroglyphes.