Que signifie REST : définition de REST

Le REST est un style architectural qui décrit les principes de base de la communication entre les systèmes informatiques sur le web. Le REST définit un ensemble de contraintes et de bonnes pratiques pour concevoir des services web qui exposent des ressources manipulables par des verbes HTTP. Cette technologie vise à offrir des services web maniables, scalables, et évolutifs.

Qu’est-ce le REST

Le REST est un style architectural qui repose sur des contraintes pour la conception d’applications distribuées. Il se base sur le protocole HTTP et utilise les verbes GET, POST, PUT et DELETE pour manipuler des ressources identifiées par des URL. Le REST favorise l’échange de représentations de ces ressources sous différents formats (XML, JSON, HTML…). Il vise à rendre les applications plus pratiques.

A voir aussi : Comment enregistrer un itinéraire ViaMichelin ?

Le REST a été introduit et défini en 2000 par Roy Fielding dans sa thèse de doctorat. Ce dernier s’inspire du fonctionnement du web lui-même, qui repose sur des interactions entre des clients (les navigateurs) et des serveurs (les sites web) à travers le protocole HTTP.

À quoi sert-il ?

Le REST sert à créer des services web qui peuvent être facilement consommés par différents types de clients, tels que des applications web, mobiles ou desktop. Ce procédé permet de définir une interface uniforme entre les clients et les serveurs, basée sur les concepts de ressource, de représentation et d’hypermedia.

A lire aussi : 10 conseils pour optimiser votre stratégie de marketing digital

Une ressource est une entité abstraite qui peut être manipulée par les clients. Par exemple, un utilisateur, un produit ou une commande sont des ressources potentielles. Une ressource est reconnue par un lien unique qui permet de la retrouver sur le web.

Une représentation est la façon dont une ressource est présentée au client. Une même ressource peut avoir plusieurs représentations possibles selon le format choisi par le client ou le serveur. Par exemple, une ressource utilisateur peut être représentée en XML, en JSON ou en HTML.

L’hypermedia est le principe selon lequel les représentations contiennent des liens vers d’autres ressources ou actions possibles. Cela permet au client de naviguer dynamiquement entre les ressources sans avoir besoin de connaître leur structure ou leur emplacement à l’avance. Par exemple, une représentation d’un produit peut contenir un lien vers la ressource panier pour ajouter le produit au panier.

Avantages et inconvénients du REST

Le REST a de nombreux atouts, comme la simplicité, la flexibilité, la scalabilité, la performance et l’évolutivité. Il permet de créer des services web faciles à développer, à maintenir et à faire évoluer. Il utilise les standards du web (HTTP, URL, XML, JSON…) sans avoir besoin d’outils ou de frameworks spécifiques. Il facilite la mise en cache et la distribution de la charge entre les serveurs et minimise la taille des messages et les appels superflus. De plus, il permet de modifier les ressources sans impacter les clients.

Le REST a aussi des limites qu’il faut connaître avant de l’adopter pour un projet. Par exemple, il demande de respecter des règles et des conventions pour être vraiment efficace et conforme à sa définition. Il nécessite aussi de renforcer la sécurité des échanges entre les clients et les serveurs avec des solutions supplémentaires, comme SSL/TLS, OAuth ou JWT. Il requiert enfin de documenter les services web qu’il expose avec des outils ou des formats spécifiques, comme Swagger ou RAML.

Informatique