PSR-7 |
PHP Standards Recommendations - 7 |
---|---|
PHP |
Description
Cette norme décrit les interfaces communes pour la représentation de messages HTTP tels que décrits dans RFC 7230 et RFC 7231, et des URI pour une utilisation avec des messages HTTP comme décrit dans la RFC 3986. Les messages HTTP sont la base du développement Web. Les navigateurs Web et les clients HTTP tels que cURL créent des messages de requête HTTP envoyés à un serveur Web, lequel fournit un message de réponse HTTP. Le code côté serveur reçoit un message de requête HTTP et renvoie un message de réponse HTTP. Les messages HTTP sont généralement des abstraits utilisateur, mais en tant que développeurs, nous avons généralement besoin de savoir comment ils sont structurés et comment les accéder ou les manipuler afin d'exécuter nos tâches, qu'il s'agisse d'une requête auprès d'une API de HTTP, ou traiter une demande entrante. Chaque message de requête HTTP a un formulaire spécifique :
POST /path HTTP/1.1Host: gladir.com
abc=def&ghi=jkl
La première ligne d'une requête est la «ligne de requête». Elle contient, dans l'ordre, la méthode de requête HTTP, la cible de la requête (généralement un URI absolu ou un chemin sur le serveur Web) et la version du protocole HTTP. Ceci est suivi par un ou plusieurs en-têtes HTTP, une ligne vide et le corps du message.
Les messages de réponse HTTP ont une structure ressemblant à ceci :
HTTP/1.1 200 OKContent-Type: text/plain
C'est la réponse du corps
La première ligne est la «ligne d'état» et contient, dans l'ordre, la version du protocole HTTP, le code d'état HTTP et une «phrase de cause», une description du code d'état lisible par l'homme. Comme le message de requête, il est ensuite suivi d'un ou plusieurs en-têtes HTTP, d'une ligne vide et du corps du message. Les interfaces décrites dans ce document sont des abstractions autour des messages HTTP et des éléments les composant.