Le HTTP par la pratique

Le HTTP a beau être l’un des piliers qui soutiennent le web c’est sans doute l’une des ses parties les moins connues. Cela tient au fait que, contrairement à d’autres technologies comme le HTML, elle est presque invisible. La seule chose qui transparaît n’est souvent que le fameux « http » des adresses internet. Pour comprendre son fonctionnement, il n’y a guère d’autre choix que de se plonger dans des articles qui ne sont souvent compréhensibles que par leurs seuls auteurs.

Heureusement une alternative est proposée par un ensemble  d’outils qui permettent de visualiser le trafic. Cela permet de donner un sens aux notions théoriques et d’apprendre en explorant.

Fiddler

Le premier et le plus utile de ces outils est Fiddler. Un proxy local pour Windows: c’est à dire un logiciel qui vient se mettre entre le navigateur et le serveur web qui fournit la page. Fiddler intercepte tous les échanges et les gardes en mémoire. Il fournit également un ensemble d’onglets pour afficher les captures dans différents formats: natif, image, JSON, XML, etc. C’est l’un des avantages de ce produit par rapport à  ses concurrents: on peut facilement afficher des données de bas niveau.

Fiddler permet également de créer et d’envoyer des commandes HTTP à un serveur web. C’est très utile pour tester une fonction et qu’on ne veut pas (ou que l’on ne sait pas) programmer pour cela.

Enfin Fiddler fournit un ensemble d’outils pour filtrer le trafic et n’afficher que les parties intéressantes. La plus utile est certainement l’outil « process filter » qui permet de n’afficher que les paquets envoyer par un programme donné. Pour l’utiliser, on sélectionne l’outil et on va ensuite cliquer sur la fenêtre de son choix. Fiddler s’occupe ensuite de récupérer le numéro du processus et de mettre le filtre en place.

Fiddler

Wireshark IconFireshark/Ethereal

Fireshark, anciennement Ethereal, est un outil qui capture les paquets transitant sur le réseau – c’est à dire un « sniffer » (renifleur). Contrairement à Fiddler qui est dédié au HTTP, Fireshark capture tous les paquets: TCP, IP, UDP, ARP,  etc. C’est donc un outil de plus bas niveau. L’avantage c’est qu’on peut voir fonctionner des protocoles inaccessibles autrement. L’inconvénient est de se voir vite noyé sous la quantité d’informations… De plus, les données sont peu lisibles. A réserver, donc, pour les experts et les curieux.

Fireshark

Navigateurs Web

Enfin, celles et ceux qui veulent juste jeter de temps en temps un œil sur le trafic réseau peuvent se tourner vers leur navigateur préféré:

  • Internet Explorer. L’outil réseau est disponible nativement. Il faut d’abord afficher les outils ( touche F12) et ensuite sélectionner le panneau réseau.
  • Firefox. Il faut d’abord installer le module Firebug. Ensuite on affiche, comme pour Explorer les outils (touche F12), puis le panneau réseau.
  • Chrome. L’outil réseau est intégré. Il faut d’abord afficher les outils de développement (touche Ctrl+Maj+I) et ensuite le panneau réseau.

On notera cependant que ces outils n’affichent que le trafic demandé par le navigateur et que la qualité des informations est variable. Une partie de ce trafic n’est, en effet, pas récupéré sur le réseau mais provient directement du cache.