Les deux méthodes HTTP les plus utilisés sont: GET et POST.
Qu'est-ce que HTTP?
Le Hypertext Transfer Protocol (HTTP) est conçu pour permettre des communications entre clients et serveurs.
HTTP fonctionne en tant que protocole de demande-réponse entre le client et le serveur.
Un navigateur Web peut être le client, et une application sur un ordinateur qui héberge un site Web peut être le serveur.
Exemple: Un client (navigateur) soumet 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é.
Deux requête HTTP Méthodes: GET et POST
Deux méthodes couramment utilisées pour une requête-réponse entre un client et le serveur sont: GET et POST.
- GET - Demandes de données à partir d' une ressource spécifiée
- POST - données Soumet à traiter à une ressource spécifiée
La méthode GET
Notez que la chaîne de requête (paires nom / valeur) est envoyé dans l'URL d'une requête GET:
/test/demo_form.asp?name1=value1&name2=value2
Quelques autres notes sur les requêtes GET:
- Les requêtes GET peuvent être mis en cache
- GET demandes restent dans l'historique du navigateur
- Les requêtes GET peuvent être mis en signet
- Les requêtes GET ne devraient jamais être utilisées lors du traitement de données sensibles
- GET demandes ont des restrictions de longueur
- GET demandes doivent être utilisées uniquement pour récupérer des données
La méthode POST
Notez que la chaîne de requête (paires nom / valeur) est envoyé dans le corps de message HTTP d'une requête POST:
POST /test/demo_form.asp HTTP/1.1
Host: w3ii.com
name1=value1&name2=value2
Quelques autres notes sur les requêtes POST:
- 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 mis en signet
- les requêtes POST ont pas de restrictions sur la longueur des données
Comparer GET vs POST
Le tableau suivant compare les deux méthodes HTTP: GET et POST.
OBTENEZ | POSTER | |
---|---|---|
Touche BACK / Reload | Inoffensif | Les données seront soumises à nouveau (le navigateur devrait alerter l'utilisateur que les données sont sur le point d'être soumis à nouveau) |
Bookmarked | Peut être bookmarked | Ne peut pas être bookmarked |
Cached | Peut être mis en cache | Non mis en cache |
Type de codage | application / x-www-form-urlencoded | application / x-www-form-urlencoded multipart / form-data ou. Utilisez le codage multipart pour les données binaires |
Histoire | 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 | Dans l'affirmative, l'envoi de données, le procédé GET ajoute les données à l'adresse URL; et la longueur d'une URL est limitée (longueur maximale de l'URL est de 2048 caractères) | Pas de restrictions |
Restrictions sur le type de données | Seuls les caractères ASCII autorisés | Aucune restriction. Les données binaires sont également autorisés |
la sécurité | GET est moins sûre par rapport à POST parce que les données envoyées sont partie de l'URL Ne jamais utiliser GET pour envoyer des mots de passe ou d'autres informations sensibles! | POST est un peu plus sûr que GET parce que les paramètres ne sont pas stockés dans l'historique du navigateur ou dans les journaux de serveur web |
Visibilité | Les données sont visibles pour tout le monde dans l'URL | Les données ne sont pas affichées dans l'URL |
Autre demande HTTP Méthodes
Le tableau suivant dresse la liste des autres méthodes de requête HTTP:
méthode | La description |
---|---|
HEAD | Même que GET mais retourne seulement en-têtes HTTP et aucun corps du document |
PUT | Téléverse une représentation de l'URI spécifié |
DELETE | Supprime la ressource spécifiée |
OPTIONS | Renvoie les méthodes HTTP que les supports de serveur |
CONNECT | Convertit la connexion demande à un / tunnel IP TCP transparent |