Académique Documents
Professionnel Documents
Culture Documents
RESTful API
Resource GET
CREATE POST
1. Utiliser des
UPDATE PUT
noms au lieu des
verbes DELETE
NE PAS UTILISER
/getAllCars
/createNewCar
/deleteAllRedCars
UTILISER LES MÉTHODES PUT, POST, ET
DELETE AU LIEU DE LA MÉTHODE GET POUR
GET et les
NE PAS UTILISER GET POUR LES
paramètres de la CHANGEMENTS D'ÉTAT.
GET /users/123?activate or
doivent pas
modifier l'état
3. Utiliser des
NE PAS UTILISER QUE DES NOMS AU
PLURIEL POUR TOUTES LES RESSOURCES
les formats de
après lequel la réponse est considérée comme
périmée.
Cache-Control: Un en-tête de réponse qui indique
serialization la directive de mise en cache pour la demande.
Authorization: Un en-tête de demande qui
contient une chaîne utilisée pour authentifier les
demandes
Content-Length: La longueur (en octets) du corps
de la demande ou de la réponse.
...
C'EST UNE CONTRAINTE DE L'ARCHITECTURE
D'UNE APPLICATION REST QUI LA DISTINGUE
DES AUTRES ARCHITECTURES APPLICATIVES
RÉSEAU.
6. Utiliser {
"id": 123,
Hypermedia As {
"id": "23",
The Engine Of
"name": "Jalal M.",
"links": [
{
Application State.
"rel": "self",
"href": "/api/v1/drivers/23"
}
]
}
]
}
UN FILTRAGE
GET /cars?color=black Renvoie une liste des voitures
noires
une sélection de
GET /cars?sort=-manufactorer,+type
champs, et une
<https://distinktec.com/sample/api/v1/products?
offset=15&limit=5>; rel="next",
<https://distinktec.com/sample/api/v1/products?
pagination pour offset=50&limit=3>; rel="last",
<https://distinktec.com/sample/api/v1/products?
8. Version de /blog/api/v1
votre API
UTILISER UN NOMBRE ORDINAL SIMPLE ET
ÉVITER LA NOTATION PAR POINTS TEL QUE
2.5
/blog/api/v2.5
UTILISER LES CODES D'ÉTAT HTTP
La norme HTTP fournit plus de 70 codes d'état
pour décrire les valeurs de retour. Nous n'avons
pas besoin de tous, mais il faut en utiliser au
9. Gérer les moins 10.
les codes d'état charge utile (Paylaod) d'erreur. Exemple de charge utile
JSON :
HTTP {
"errors": [{
"userMessage": "Désolé, la ressource demandée n'existe
pas",
"internalMessage": "No product found in the database",
"code": 34,
"more info":
"http://distinktec.com/blog/api/v1/errors/12345"
}]
}
LORSQUE VOUS UTILISEZ DES MÉTHODES
HTTP,TENEZ COMPTE DES ASPECTS DE
SÉCURITÉ. POUR UNE SÉCURITÉ RENFORCÉE,
CERTAINS PARE-FEU N'AUTORISENT PAS LE
TRAFIC HTTP PUT OU DELETE .
méthode HTTP
Utiliser les champs d'en-tête HTTP X-Method-Override ou
X-HTTP-Method-Override pour canaliser une requête PUT
ou DELETE via une requête POST .
Utiliser les paramètres d'URI x-method-override oux-http-
method-override.
Exemple :
POST /api/v1/categories?...&x-method-override=PUT
Avez-vous
des questions?
Commentez / Contactez-nous / Suivez-nous