MEILLEUR SITE POUR LES DÉVELOPPEURS WEB
HTML5. W3Schools en français. Le guide complet des tags

En Ua Es De

HTTP Méthodes de requête


Qu'est-ce que HTTP ?

Le protocole HTTP (Hypertext Transfer Protocol) est conçu pour permettre les communications entre les clients et les serveurs.

HTTP fonctionne comme un protocole requête-réponse entre un client et un serveur.

Exemple : Un client (navigateur) envoie une requête HTTP au serveur ; puis le serveur renvoie une réponse au client. La réponse contient des informations d'état sur la demande et peut également contenir le contenu demandé.


Méthodes HTTP

  • GET
  • POST
  • PUT
  • HEAD
  • DELETE
  • PATCH
  • OPTIONS
  • CONNECT
  • TRACE

Les deux méthodes HTTP les plus courantes sont : GET et POST.


La méthode GET

GET est utilisé pour demander des données à une ressource spécifiée.

Notez que la chaîne de requête (paires nom/valeur) est envoyée dans l'URL d'une requête GET :

/test/demo_form.html?name1=value1&name2=value2

Quelques notes sur les requêtes GET :

  • Les requêtes GET peuvent être mises en cache
  • GET demande de rester dans l'historique du navigateur
  • Les requêtes GET peuvent être ajoutées à vos favoris
  • Les requêtes GET ne doivent jamais être utilisées lorsqu'il s'agit de données sensibles
  • Requêtes GET pour avoir des restrictions de longueur
  • Les requêtes GET ne sont utilisées que pour demander des données (et non pour les modifier)

La méthode POST

POST est utilisé pour envoyer des données à un serveur pour créer/mettre à jour une ressource.

Les données envoyées au serveur avec POST sont stockées dans le corps de la requête HTTP :

POST /test/demo_form.html HTTP/1.1
Host: w3schools.com

name1=value1&name2=value2

Quelques notes sur les requêtes POST :

  • Les requêtes POST ne sont jamais mises en cache
  • Les requêtes POST ne restent pas dans l'historique du navigateur
  • Les requêtes POST ne peuvent pas être mises en signet
  • Les requêtes POST n'ont aucune restriction sur la longueur des données

Comparez GET et POST

Le tableau suivant compare les deux méthodes HTTP : GET et POST.

  GET POST
Bouton RETOUR/Recharger Inoffensif Les données seront soumises à nouveau (le navigateur doit alerter l'utilisateur que les données sont sur le point d'être soumises à nouveau)
Marqué Peut être ajouté à vos favoris Ne peut pas être ajouté aux favoris
En cache Peut être mis en cache Non mis en cache
Type d'encodage application/x-www-form-urlencoded application/x-www-form-urlencoded ou multipart/form-data. Utiliser le codage en plusieurs parties pour les données binaires
Historique Les paramètres restent dans l'historique du navigateur Les paramètres ne sont pas enregistrés dans l'historique du navigateur
Restrictions sur la longueur des données Oui, lors de l'envoi de données, la méthode GET ajoute les données à l'URL ; et la longueur d'une URL est limitée (la longueur maximale de l'URL est de 2 048 caractères) Aucune restriction
Restrictions sur le type de données Seuls les caractères ASCII autorisés Aucune restriction. Les données binaires sont également autorisées
Sécurité GET est moins sécurisé que POST car les données envoyées font partie de l'URL

N'utilisez jamais GET lors de l'envoi de mots de passe ou d'autres informations sensibles !
POST est un peu plus sûr que GET car les paramètres ne sont pas stockés dans l'historique du navigateur ni dans les journaux du serveur Web
Visibilité Les données sont visibles par tout le monde dans l'URL Les données ne sont pas affichées dans l'URL

La méthode PUT

PUT est utilisé pour envoyer des données à un serveur pour créer/mettre à jour une ressource.

La différence entre POST et PUT est que les requêtes PUT sont idempotentes. Autrement dit, appeler plusieurs fois la même requête PUT produira toujours le même résultat. En revanche, l'appel répété d'une requête POST a pour effet secondaire de créer plusieurs fois la même ressource.


La méthode HEAD

HEAD est presque identique à GET, mais sans le corps de la réponse.

En d'autres termes, si GET /users renvoie une liste d'utilisateurs, alors HEAD /users fera la même requête mais ne renverra pas la liste des utilisateurs.

Les requêtes HEAD sont utiles pour vérifier ce qu'une requête GET renverra avant de faire une requête GET - comme avant de télécharger un fichier volumineux ou un corps de réponse.


La méthode DELETE

La méthode DELETE supprime la ressource spécifiée.


La méthode PATCH

La méthode PATCH permet d'appliquer des modifications partielles à une ressource.


La méthode OPTIONS

La méthode OPTIONS décrit les options de communication pour la ressource cible.


La méthode CONNECT

La méthode CONNECT est utilisée pour démarrer une communication bidirectionnelle (un tunnel) avec la ressource demandée.


La méthode TRACE

La méthode TRACE est utilisée pour effectuer un test de bouclage de message qui teste le chemin de la ressource cible (utile à des fins de débogage).