Des milliers de systèmes voulaient s'exposer sur Internet, mais chacun construisait un protocole RPC sur mesure, si bien qu'aucun client ne pouvait communiquer avec deux d'entre eux. L'obstacle n'était ni l'intelligence ni la bande passante ; c'était une interface spécialisée pour chaque service.
La thèse de Fielding a montré que le minimum était une interface uniforme : identifier les ressources par un URI, les manipuler au moyen de représentations, garder les messages autodescriptifs et utiliser l'hypermédia comme moteur de l'état, le tout superposé aux contraintes existantes de client-serveur, d'absence d'état et de cache.
Parce que REST réutilisait les verbes génériques de HTTP au lieu d'en inventer de nouveaux, un client capable de récupérer une page pouvait aussi appeler une API. C'est pourquoi REST est devenu la norme par défaut des API web, supplantant le style RPC et CORBA.
Réutiliser les verbes et les adresses de ressources de HTTP comme interface.
L'interface uniforme signifie qu'un seul client générique et un seul ensemble de bibliothèques fonctionnent avec toutes les API REST, ce qui réduit le coût de l'intégration.
Parce que REST contraint plutôt que définit, et qu'il repose sur HTTP, il n'a nécessité ni nouveau protocole ni nouvelle pile pour être déployé.
L'absence d'état combinée au cache permet aux intergiciels de mettre à l'échelle les requêtes sans que le serveur sache qui est l'appelant entre deux appels.
L'hypermédia comme moteur de l'état permet à un client de découvrir les affordances au lieu de coder en dur chaque point de terminaison.
Une norme dérivée de ce qui fonctionne déjà partout hérite de sa portée ; parfois la plus grande décision de conception est la contrainte que l'on refuse d'ajouter.
Suites
La thèse de Fielding a été publiée en 2000 et REST est devenu le style dominant pour les API web publiques et internes, remplaçant le RPC de style SOAP. Il a ensuite acquis des conventions (OpenAPI, et la lecture CRUD-sur-HTTP qui sous-exploite souvent l'hypermédia), et certains soutiennent que sa forme hypermédia la plus stricte a rarement été mise en œuvre, mais l'idée d'interface uniforme l'a emporté.
VÉRIFIEZ LES SOURCES
Les sources
- Representational State Transfer (REST), Fielding Dissertation Chapter 5 Roy T. Fielding / University of California, Irvine · ics.uci.edu
- Representational state transfer Wikipedia · en.wikipedia.org