Middle
Quelles règles d'architecture REST connaissez-vous?
sobes.tech IA
Réponse de l'IA
- Architecture client-serveur : Séparation claire des responsabilités entre le client, qui demande des ressources, et le serveur, qui les fournit.
- Sans état (Stateless) : Chaque requête du client au serveur doit contenir toutes les informations nécessaires pour comprendre et traiter la requête. Le serveur ne stocke pas d'informations sur les requêtes précédentes du client.
- Cachable : Les réponses du serveur peuvent être marquées comme cacheables ou non, permettant aux clients de réutiliser les réponses pour améliorer la performance.
- Interface uniforme : Quatre contraintes :
- Identification des ressources : Les ressources sont identifiées par URI.
- Manipulation des ressources via des représentations : Le client interagit avec la ressource en transmettant des représentations.
- Messages auto-descriptifs : Chaque message contient suffisamment d'informations pour comprendre comment le traiter (par exemple, type de contenu).
- HATEOAS (Hypermedia as the Engine of Application State) : Le client navigue entre les ressources en suivant les liens dans les réponses du serveur.
- Système en couches : L'architecture permet d'utiliser des couches intermédiaires (par exemple, proxies, passerelles) entre le client et le serveur sans affecter leur interaction.
- Code à la demande (optionnel) : Le serveur peut temporairement étendre ou configurer la fonctionnalité du client en transmettant du code exécutable (par exemple, JavaScript). C'est une règle optionnelle.