Vous tapez une adresse dans votre navigateur, appuyez sur Entrée, et une page apparaît en une fraction de seconde. Derrière ce geste banal se cache un dialogue précis entre votre ordinateur et un serveur, régi par un protocole : HTTP. Comprendre ce dialogue est une base indispensable pour qui veut apprendre la programmation web.
Le principe : le client demande, le serveur répond
HTTP (HyperText Transfer Protocol) repose sur un modèle simple de requête et réponse. Le navigateur, appelé client, envoie une requête. Le serveur, un ordinateur qui héberge le site, renvoie une réponse. Chaque échange est indépendant : par défaut, le serveur ne garde pas en mémoire les requêtes précédentes, on dit que HTTP est un protocole « sans état ».
Que se passe-t-il quand vous ouvrez une page ?
- Résolution du nom de domaine : votre navigateur ne connaît pas l’emplacement d’« exemple.com ». Il interroge le système DNS, qui joue le rôle d’annuaire et renvoie l’adresse IP du serveur.
- Établissement de la connexion : le navigateur ouvre une connexion avec ce serveur, généralement via le protocole TCP. Avec HTTPS, une étape de sécurisation s’ajoute (voir plus bas).
- Envoi de la requête : le navigateur demande la ressource souhaitée, par exemple la page d’accueil.
- Traitement par le serveur : le serveur lit la requête, trouve ou génère le contenu demandé.
- Envoi de la réponse : le serveur renvoie un code d’état, des en-têtes et le contenu, souvent du HTML.
- Affichage : le navigateur lit le HTML, découvre qu’il lui faut aussi des feuilles de style, des images ou des scripts, et envoie de nouvelles requêtes pour les récupérer. Puis il assemble le tout.
Anatomie d’une requête HTTP
Une requête se compose de plusieurs éléments :
- Une méthode qui indique l’action souhaitée (GET, POST, etc.).
- Un chemin qui désigne la ressource, par exemple
/contact. - Des en-têtes qui apportent des informations : le nom de domaine visé, le type de navigateur, les langues acceptées, les cookies.
- Un corps (optionnel) qui transporte des données, par exemple le contenu d’un formulaire.
GET /contact HTTP/1.1
Host: www.exemple.com
Accept-Language: fr
Les méthodes HTTP les plus courantes
| Méthode | Rôle | Exemple d’usage |
|---|---|---|
| GET | Lire une ressource | Afficher une page ou récupérer une liste |
| POST | Envoyer des données pour créer quelque chose | Soumettre un formulaire d’inscription |
| PUT | Remplacer une ressource existante | Mettre à jour entièrement un profil |
| PATCH | Modifier une partie d’une ressource | Changer seulement l’adresse e-mail |
| DELETE | Supprimer une ressource | Effacer un commentaire |
La réponse et les codes d’état
La réponse commence par un code à trois chiffres qui résume le résultat. Leur première cadre le sens général :
- 2xx : succès. Le code 200 signifie « OK », la requête a abouti.
- 3xx : redirection. Le code 301 indique qu’une page a été déplacée de façon permanente.
- 4xx : erreur du client. Le fameux 404 signifie que la ressource est introuvable. Le 403 signale un accès interdit.
- 5xx : erreur du serveur. Le 500 révèle un problème interne côté serveur.
Après le code viennent les en-têtes de réponse, par exemple le type de contenu (text/html, application/json, image/png), puis le corps lui-même.
HTTP et HTTPS : où se situe la différence ?
Le « S » de HTTPS signifie Secure. Le protocole reste le même, mais les échanges sont chiffrés grâce à une couche de sécurité nommée TLS. Avec du HTTP simple, tout ce qui circule entre vous et le serveur peut, en théorie, être lu par quelqu’un qui intercepte le trafic, par exemple sur un Wi-Fi public. Avec HTTPS, les données sont illisibles pour un tiers.
HTTPS apporte trois garanties principales :
- Confidentialité : le contenu des échanges est chiffré.
- Intégrité : les données ne peuvent pas être modifiées en chemin sans que cela soit détecté.
- Authentification du serveur : un certificat, délivré par une autorité de certification, prouve que vous parlez bien au site attendu.
Précision utile : le cadenas dans la barre d’adresse atteste que la connexion est chiffrée, pas que le site est honnête. Un site malveillant peut lui aussi utiliser HTTPS.
Cookies et sessions : donner de la mémoire à HTTP
Puisque HTTP ne mémorise rien, comment un site sait-il que vous êtes connecté ? Grâce aux cookies. Le serveur envoie un petit morceau d’information que le navigateur stocke, puis renvoie automatiquement à chaque nouvelle requête vers ce site. Le serveur reconnaît ainsi l’utilisateur d’une page à l’autre. C’est un mécanisme ajouté par-dessus HTTP, pas une propriété du protocole lui-même.
Observer les requêtes par vous-même
Vous pouvez voir ce dialogue en direct. Dans la plupart des navigateurs, ouvrez les outils de développement (touche F12), puis l’onglet « Réseau ». Rechargez la page : la liste des requêtes apparaît, avec la méthode, le code d’état, le type et la taille de chaque ressource. Cliquer sur une ligne affiche les en-têtes de la requête et de la réponse. C’est un excellent exercice pour assimiler ce qui précède.
Conclusion
Chaque page web est le résultat d’un échange de requêtes et de réponses : un client demande, un serveur répond, et HTTPS protège ce dialogue par le chiffrement. Connaître les méthodes, les codes d’état et le rôle des cookies vous aidera à comprendre et à déboguer n’importe quel site. Pour aller plus loin, les cours de programmation web et de développement back-end de Cursa vous guident pas à pas, de l’HTML aux échanges avec un serveur.



























