Spécification REST

AJOUT : UTILISER https://jsonplaceholder.typicode.com/users

La spécification REST normalise la forme d’appel des webservices. Elle s’appuie sur la notion de ressource, une ressource étant associée à un endpoint.

Exemple : la ressource users associée au end-point http://json-server.jcbuisson.dev/api/users

  • chaque instance de ressource (par ex. chaque user) possède un identifiant, généralement autogénéré par la base de données
  • les verbes HTTP GET, POST, PUT et DELETE correspondent à des opérations de type CRUD (CREATE, READ, UPDATE, and DELETE) sur les ressources
  • cette spécification est applicable aussi bien au transport HTTP qu’au transport Websocket

GET

La méthode GET est utilisée pour obtenir du serveur la liste des toutes les ressources d’un certain type, ou une ressource particulière précisée par son identifiant

Exemples :

Les deux requêtes font référence au end-point http://json-server.jcbuisson.dev/api/users ; la première demande la liste de tous les utilisateurs, la seconde la liste de tous les utilisateurs hommes, la troisième l’utilisateur d’identifiant 89.

POST

La méthode POST est utilisée pour créer une nouvelle ressource sur le serveur

Exemple :

Cette requête créée une nouvelle resource pour le endpoint http://json-server.jcbuisson.dev/api/users, c’est à dire un nouvel utilisateur. Les données qui concernent l’utilisateur doivent être placées dans la section DATA de la requête.

PUT

La méthode PUT est utilisée pour mettre à jour une ressource spécifique sur le serveur

Exemple :

L’ensemble des données de l’utilisateur 89 doit être placé dans la section DATA de la requête.

PATCH

La méthode PATCH est également utilisée pour mettre à jour une ressource spécifique sur le serveur

Exemple :

À la différence de PUT, seules les données à modifier doivent être placées dans la section DATA de la requête

DELETE

La méthode DELETE permet de supprimer une ressource spécifique Example:

HEAD est similaire à GET, mais ne renvoie que les headers et pas la réponse

OPTIONS

OPTIONS est utilisée pour obtenir les options de communication avec la cible : verbes HTTP possibles, méthodes d’authentification demandées, utilisation de la politique CORS (Cross Origin Resource Sharing). (voir ‘preflight requests’)