En-têtes
Les en-têtes de requêtes permettent au client de mieux négocier les échanges avec le serveur, tandis que les en-têtes de réponses fournissent des méta informations parfois précieuses au client.
devraitQu'il s'agisse de la requête du client ou de la réponse du serveur, utiliser en priorité les en-têtes déjà existants dans la norme HTTP, avant d'envisager de créer des en-têtes custom.doitTout en-tête custom doit être préfixé par X-
doitUn en-tête n'est pas sensible à la casse, respecter cette règle pour garantir la neutralité par rapport aux technologies employées par le client : "ACCEPT" est équivalent à "accept" et "Accept", etc.
En-têtes les plus courants
En-têtes à utiliser lors d'échanges API conformément aux standards HTTP :
Requête
En-tête | Description |
---|---|
Accept | Type de média accepté par le client pour la réponse (exemple : application/json) |
Langue acceptée par le client pour la réponse (exemple : da) | |
Authorization | Fournit une autorisation (Basic Auth, token OAuth, HMAC, ...) éventuellement requise par l'API |
Indique la longueur en octets du corps de la requête | |
Indique le type de média du corps de la requête | |
Indique le nom du produit qui propulse l'API (exemple : PHP/5.2.6-2ubuntu4.2), il est courant de ne pas définir cet en-tête pour des raisons de sécurité | |
Indique si la réponse est issue d'un cache (HIT) ou non (MISS), à utiliser avec une politique de cache | |
Fournit la liste des IPs des différents noeuds HTTP parcourus entre le client et le serveur, utile au serveur pour obtenir l'IP d'origine du client lorsque sa requête traverse un reverse proxy | |
Indique la véritable méthode à considérer, utilisé lorsque le client ne supporte pas la vraie méthode (et utilise généralement le fallback "POST") |
Réponse
En-tête | Description |
---|---|
Indique le nom de fichier à utiliser pour sauvegarder un téléchargement | |
Indique l'algorithme de compression ou de chiffrement utilisé dans le contenu de la réponse | |
Indique la longueur en octets du corps de la réponse | |
Indique la langue utilisée dans le contenu de la réponse | |
Indique l'URI d'origine de la ressource, utilisé lorsque l'URI de la ressource différe de la requête (exemple : alias) | |
Indique la part de la représentation de la ressource figurant dans le contenu, utilisé dans une gestion de liste | |
Location | Indique l'URI de la nouvelle ressource, utilisé lors d'une création (POST) pour fournir au client un moyen de récupérer la ressource fraichement créée |