Définition

L'Hypertext Transfer Protocol (HTTP, littéralement « protocole de transfert hypertexte ») est un protocole de communication client-serveur développé pour le World Wide Web. 

HTTP est un protocole de la couche application. Il peut fonctionner sur n'importe quelle connexion fiable, dans les faits on utilise le protocole TCP comme couche de transport. Un serveur HTTP utilise alors par défaut le port 80 (443 pour HTTPS).

Les clients HTTP les plus connus sont les navigateurs Web permettant à un utilisateur d'accéder à un serveur contenant les données. 

Anatomie d'une requête HTTP 

Une requête http est composée :

  • d'une entête générale (que ce soit une requête ou une réponse)
    Ex d'entête générale :
    	Cache-Control: no-cache, private
    	Connection: close
    	Content-Length: 272
    	Content-Type: application/json
    	Date: Fri, 25 Sep 2020 09:12:42 GMT
    	Server: Apache/2.4.29 (Ubuntu)
  • d'une entête spécifique à la requête ou à la réponse. Ex d'entête de requête  :

    Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.9
    Accept-Encoding: gzip, deflate
    Accept-Language: fr-FR,fr;q=0.9,en-US;q=0.8,en;q=0.7
    Cache-Control: max-age=0
    Connection: keep-alive
    Host: local.mvc.my
    Upgrade-Insecure-Requests: 1
    User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/85.0.4183.102 Safari/537.36
  • du corps de la requête qui est compris dans le "payload". Ex de corps en post lorsque l'on renseigne un formulaire d'identification :
    {name: "bob", pass: "542587155DiidO:;"}

Anatomie d'une URL

url anatomie

Visualiser une requête HTTP

astuceSur chrome, F12 > network