À retenir
- Utilise les protocoles standards du Web (HTTP).
- Organise les données sous forme de ressources accessibles par des URL (adresses web).
- Favorise la rapidité et la simplicité des échanges entre machines.
REST est une méthode d'organisation qui permet à deux ordinateurs de communiquer entre eux via Internet de manière simple et standardisée. On peut l'imaginer comme un menu de restaurant universel : peu importe le restaurant (le serveur), le client sait qu'il peut commander un plat (une donnée) en utilisant des verbes d'action précis comme « lire » ou « ajouter ».
Étymologie
Le terme est un acronyme anglais pour Representational State Transfer (Transfert d'état représentationnel). Il a été introduit en l'an 2000 par Roy Fielding dans sa thèse de doctorat pour définir les principes de fonctionnement du Web moderne.
Exemples d'usage
- Une application mobile qui récupère la météo actuelle en interrogeant un serveur distant.
- Le bouton « J'aime » d'un réseau social qui envoie une instruction de mise à jour à une base de données.
- Un site e-commerce qui demande la liste des produits disponibles à un catalogue centralisé.
Cas d'usage
Ce concept est principalement utilisé dans le développement d'APIs Web. Il permet à des services différents (un site web, une application mobile, un logiciel tiers) de s'échanger des informations de manière fluide, souvent au format JSON ou XML.
Bonnes pratiques
Il est recommandé d'utiliser correctement les verbes HTTP : GET pour lire, POST pour créer, PUT pour modifier et DELETE pour supprimer. Une architecture REST doit aussi être sans état (stateless), ce qui signifie que chaque demande du client doit contenir toutes les informations nécessaires pour être comprise, sans que le serveur n'ait à se souvenir des échanges précédents.
Synonymes
Antonymes
Conseil
Si vous débutez, commencez par manipuler des API publiques avec des outils comme Postman ou Insomnia. Cela vous aidera à visualiser comment les requêtes et les réponses circulent avant de tenter de coder votre propre serveur.
Questions fréquentes
Est-ce que REST est un langage de programmation ?
Non, c'est un style d'architecture ou un ensemble de règles de conception, pas un code en soi.
Quelle est la différence avec SOAP ?
SOAP est un protocole plus rigide et complexe, souvent utilisé dans le secteur bancaire, tandis que REST est plus léger et populaire pour les applications web modernes.
C'est quoi une API RESTful ?
On dit qu'une API est 'RESTful' lorsqu'elle respecte scrupuleusement les principes de l'architecture REST.