Sur le Web, les clients, comme votre na­vi­ga­teur, com­mu­ni­quent avec les serveurs Web en utilisant le protocole HTTP. Ce protocole contrôle la façon dont le client formule ses demandes et la façon dont le serveur y répond. Le protocole HTTP connaît dif­fé­rentes méthodes de requête. Il est utile de connaître au moins les plus courantes d’entre elles. Dans cet article, vous ap­pren­drez les détails des méthodes de requête HTTP.

Free Cloud Server Trial
Serveurs Virtuels Privés de niveau en­tre­prise
  • Serveurs pour les dé­ve­lop­peurs basés sur KVM
  • Évo­lu­ti­vité flexible, jusqu'au Cloud d'en­tre­prise
  • Pay-as-you-go : fac­tu­ra­tion à la minute, selon l'uti­li­sa­tion

GET

GET est l’ « ancêtre » des requêtes HTTP. Cette méthode de requête existe depuis le début du Web. Elle est utilisée pour demander une ressource, par exemple un fichier HTML, au serveur Web.

Si vous entrez l’URL www.exemple.com dans votre na­vi­ga­teur, celui-ci se connecte au serveur Web et lui envoie la requête GET :

GET /index.php

Le fichier index.php dans cet exemple est sim­ple­ment la page d’accueil ; il est envoyé du serveur au na­vi­ga­teur.

De même, la demande de l’URL www.exemple.com/test.html serait formulée ainsi :

GET /test.html

Le serveur renvoie le fichier test.html.

Pa­ra­mètres URL

Le serveur envoie le fichier test. La requête GET peut recevoir des in­for­ma­tions sup­plé­men­taires que le serveur Web doit traiter. Ces pa­ra­mètres d’URL sont sim­ple­ment ajoutés à l’URL. La syntaxe est très simple :

  • La chaîne de requête est in­tro­duite par un « ? » (point d’in­ter­ro­ga­tion).
  • Chaque paramètre est nommé, il se compose donc d’un nom et d’une valeur : « Nom=Valeur ».
  • Si plusieurs pa­ra­mètres doivent être inclus, ils sont reliés par un « & ».

Voici un exemple : sur le site Web d’une en­tre­prise de logiciels, « Windows » est saisi comme pla­te­forme et « Office » comme catégorie pour afficher les offres cor­res­pon­dantes du serveur :

GET /search?platform=Windows&category=office

Codage URL de la chaîne Query

Les chaînes Query né­ces­si­tent un encodage de ca­rac­tères spéciaux car de nombreux ca­rac­tères spéciaux ont une sig­ni­fi­ca­tion par­ti­cu­lière. Par exemple, le texte « HTTP Overview » doit être codé comme suit pour être accepté comme chaîne d’in­ter­ro­ga­tion

GET /search?thema=HTTP-%C3%9Cberblick%0A
Conseil
Vous pouvez fa­ci­le­ment créer des codages d’URL avec un outil en ligne par exemple avec un encodeur URL, et hors ligne avec la fonction Excel URLENCODE().

POST

Si vous souhaitez envoyer de grandes quantités de données, par exemple des images, ou des données con­fi­den­tielles de for­mu­laires au serveur, la méthode GET n’est pas idéale car toutes les données que vous envoyez sont écrites ou­ver­te­ment dans la barre d’adresse du na­vi­ga­teur.

Dans ces cas, la méthode POST est la plus adaptée. Cette méthode n’écrit pas les pa­ra­mètres de l’URL, mais les ajoute à l’en-tête HTTP.

Les requêtes POST sont prin­ci­pa­le­ment utilisées pour les for­mu­laires en ligne. Voici un exemple de for­mu­laire qui prend le nom et l’adresse élec­tro­nique et les envoie au serveur en utilisant POST :

<html>
<body>
<form action="newsletter.php" method="post">
Name: <input type="text" name="name"><br>
E-mail: <input type="text" name="email"><br>
<input type="submit">
</form>
</body>
</html>
Conseil

Vous trouverez aussi dans notre guide un article sur les dif­fé­rences entre GET et POST.

HEAD

La méthode HEAD est utilisée pour in­ter­ro­ger l’en-tête de la réponse, sans que le fichier ne vous soit envoyé im­mé­dia­te­ment. C’est utile, par exemple, si des fichiers vo­lu­mi­neux doivent être trans­fé­rés : grâce à la requête HEAD, le client peut d’abord être informé de la taille du fichier et seulement ensuite décider s’il veut recevoir le fichier.

Exemple :

HEAD /downloads/video1.mpeg HTTP/1.0

Dans l’en-tête de la réponse du serveur, le client trouvera l’in­for­ma­tion sur la taille du fichier dans le champ d’en-tête « content-length » :

OPTIONS

Avec la méthode OPTIONS, le client peut demander quelles méthodes le serveur supporte pour le fichier en question.

OPTIONS /download.php

La réponse peut aussi res­sem­bler à ceci :

Dans le champ « allow », nous apprenons que le serveur prend en charge les méthodes OPTIONS, GET, HEAD et POST. Dans le champ « content-length », le chiffre 0 nous indique qu’aucun fichier n’a été transféré, seulement l’en-tête.

TRACE

La méthode TRACE peut être utilisée pour tracer le chemin qu’une requête HTTP emprunte jusqu’au serveur puis jusqu’au client. Vous pouvez utiliser la commande tracert de Windows pour tracer vous-même cet iti­né­raire. Pour ce faire, entrez la commande suivante dans la ligne de commande (cmd.exe) :

tracert www.exemple.com

Méthodes spé­ci­fiques

Certaines méthodes ne sont ap­pli­cables que dans le cadre de con­fi­gu­ra­tions spé­ci­fiques. Il s’agit notamment de la méthode CONNECT, qui établit une connexion directe et protégée via un proxy (tunneling), et de diverses méthodes en rapport avec WebDAV : PATCH, PROPFIND, PROPPATCH, MKCOL, COPY, MOVE, LOCK, UNLOCK.

PUT, PATCH et DELETE sont utilisés pour en­re­gis­trer, modifier ou supprimer des fichiers sur le serveur. Dans la pro­gram­ma­tion normale d’un site Web, ces méthodes ne jouent pra­ti­que­ment aucun rôle, car elles sont bloquées par les serveurs pour des raisons de sécurité. Ils trouvent leur ap­pli­ca­tion dans le contexte de WebDAV et en relation avec REST-API.

Aller au menu principal