Test de sécurité - Méthodes HTTP

Méthodes HTTP

L'ensemble des méthodes courantes pour HTTP / 1.1 est défini ci-dessous et cet ensemble peut être étendu en fonction des besoins. Ces noms de méthodes sont sensibles à la casse et doivent être utilisés en majuscules.

S.No. Méthode et description
1

GET

Il est utilisé pour récupérer des informations sur le serveur donné en utilisant un URI donné. Les requêtes utilisant GET ne doivent récupérer que des données et ne doivent avoir aucun autre effet sur les données.

2

HEAD

Il est identique à GET, mais ne transfère que la ligne d'état et la section d'en-tête.

3

POST

Il est utilisé pour envoyer des données au serveur. Par exemple, les informations client, le téléchargement de fichiers, etc. à l'aide de formulaires HTML.

4

PUT

Il remplace toutes les représentations actuelles de la ressource cible par le contenu téléchargé.

5

DELETE

Il supprime toutes les représentations actuelles de la ressource cible données par URI.

6

CONNECT

Il établit un tunnel vers le serveur identifié par un URI donné.

sept

OPTIONS

Il décrit les options de communication pour la ressource cible.

8

TRACE

Il effectue un test de bouclage des messages le long du chemin vers la ressource cible.

Méthode GET

Il récupère les données d'un serveur Web en spécifiant des paramètres dans la partie URL de la demande. C'est la principale méthode utilisée pour la récupération de documents. L'exemple suivant utilise la méthode GET pour récupérerhello.htm -

GET /hello.htm HTTP/1.1
User-Agent: Mozilla/4.0 (compatible; MSIE5.01; Windows NT)
Host: www.tutorialspoint.com
Accept-Language: en-us
Accept-Encoding: gzip, deflate
Connection: Keep-Alive

La réponse du serveur suivante est émise contre la demande GET ci-dessus -

HTTP/1.1 200 OK
Date: Mon, 27 Jul 2009 12:28:53 GMT
Server: Apache/2.2.14 (Win32)
Last-Modified: Wed, 22 Jul 2009 19:15:56 GMT
ETag: "34aa387-d-1568eb00"
Vary: Authorization,Accept
Accept-Ranges: bytes
Content-Length: 88
Content-Type: text/html
Connection: Closed

<html>
   <body>
      <h1>Hello, World!</h1>
   </body>
</html>

HEAD, méthode

Il est fonctionnellement similaire à GET, sauf que le serveur répond avec une ligne de réponse et des en-têtes, mais pas de corps d'entité. L'exemple suivant utilise la méthode HEAD pour récupérer les informations d'en-tête surhello.htm -

HEAD /hello.htm HTTP/1.1
User-Agent: Mozilla/4.0 (compatible; MSIE5.01; Windows NT)
Host: www.tutorialspoint.com
Accept-Language: en-us
Accept-Encoding: gzip, deflate
Connection: Keep-Alive

La réponse du serveur suivante est émise contre la demande GET ci-dessus -

HTTP/1.1 200 OK
Date: Mon, 27 Jul 2009 12:28:53 GMT
Server: Apache/2.2.14 (Win32)
Last-Modified: Wed, 22 Jul 2009 19:15:56 GMT
ETag: "34aa387-d-1568eb00"
Vary: Authorization,Accept
Accept-Ranges: bytes
Content-Length: 88
Content-Type: text/html
Connection: Closed

Vous pouvez remarquer que le serveur n'envoie aucune donnée après l'en-tête.

Méthode POST

Il est utilisé lorsque vous souhaitez envoyer des données au serveur. Par exemple, mise à jour de fichier, données de formulaire, etc. L'exemple simple suivant utilise la méthode POST pour envoyer des données de formulaire au serveur qui sont traitées par unprocess.cgi et enfin une réponse est retournée -

POST /cgi-bin/process.cgi HTTP/1.1
User-Agent: Mozilla/4.0 (compatible; MSIE5.01; Windows NT)
Host: www.tutorialspoint.com
Content-Type: text/xml; charset = utf-8
Content-Length: 88
Accept-Language: en-us
Accept-Encoding: gzip, deflate
Connection: Keep-Alive

<?xml version = "1.0" encoding = "utf-8"?>
<string xmlns = "http://clearforest.com/">string</string>

Script côté serveur process.cgi traite les données transmises et envoie la réponse suivante -

HTTP/1.1 200 OK
Date: Mon, 27 Jul 2009 12:28:53 GMT
Server: Apache/2.2.14 (Win32)
Last-Modified: Wed, 22 Jul 2009 19:15:56 GMT
ETag: "34aa387-d-1568eb00"
Vary: Authorization,Accept
Accept-Ranges: bytes
Content-Length: 88
Content-Type: text/html
Connection: Closed

<html>
   <body>
      <h1>Request Processed Successfully</h1>
   </body>
</html>

Méthode PUT

La méthode PUT est utilisée pour demander au serveur de stocker le corps d'entité inclus à un emplacement spécifié par l'URL donnée. L'exemple suivant demande au serveur d'enregistrer le garçon-entité donné danshello.htm à la racine du serveur -

PUT /hello.htm HTTP/1.1
User-Agent: Mozilla/4.0 (compatible; MSIE5.01; Windows NT)
Host: www.tutorialspoint.com
Accept-Language: en-us
Connection: Keep-Alive
Content-type: text/html
Content-Length: 182

<html>
   <body>
      <h1>Hello, World!</h1>
   </body>
</html>

Le serveur stocke le corps d'entité donné dans hello.htm fichier et renvoie la réponse suivante au client -

HTTP/1.1 201 Created
Date: Mon, 27 Jul 2009 12:28:53 GMT
Server: Apache/2.2.14 (Win32)
Content-type: text/html
Content-length: 30
Connection: Closed

<html>
   <body>
      <h1>The file was created.</h1>
   </body>
</html>

DELETE, méthode

La méthode DELETE est utilisée pour demander au serveur de supprimer le fichier à un emplacement spécifié par l'URL donnée. L'exemple suivant demande au serveur de supprimer le fichier donnéhello.htm à la racine du serveur -

DELETE /hello.htm HTTP/1.1
User-Agent: Mozilla/4.0 (compatible; MSIE5.01; Windows NT)
Host: www.tutorialspoint.com
Accept-Language: en-us
Connection: Keep-Alive

Le serveur supprime le fichier mentionné hello.htm et renvoie la réponse suivante au client -

HTTP/1.1 200 OK
Date: Mon, 27 Jul 2009 12:28:53 GMT
Server: Apache/2.2.14 (Win32)
Content-type: text/html
Content-length: 30
Connection: Closed

<html>
   <body>
      <h1>URL deleted.</h1>
   </body>
</html>

CONNECT, méthode

Il est utilisé par le client pour établir une connexion réseau à un serveur Web via HTTP. L'exemple suivant demande une connexion avec un serveur Web s'exécutant sur l'hôte tutorialspoint.com -

CONNECT www.tutorialspoint.com HTTP/1.1
User-Agent: Mozilla/4.0 (compatible; MSIE5.01; Windows NT)

La connexion est établie avec le serveur et la réponse suivante est renvoyée au client -

HTTP/1.1 200 Connection established
Date: Mon, 27 Jul 2009 12:28:53 GMT
Server: Apache/2.2.14 (Win32)

OPTIONS, méthode

Il est utilisé par le client pour savoir quelles sont les méthodes HTTP et autres options prises en charge par un serveur Web. Le client peut spécifier une URL pour la méthode OPTIONS, ou un astérisque (*) pour désigner l'ensemble du serveur. L'exemple suivant demande une liste de méthodes prises en charge par un serveur Web s'exécutant sur tutorialspoint.com -

OPTIONS * HTTP/1.1
User-Agent: Mozilla/4.0 (compatible; MSIE5.01; Windows NT)

Le serveur envoie des informations basées sur la configuration actuelle du serveur, par exemple -

HTTP/1.1 200 OK
Date: Mon, 27 Jul 2009 12:28:53 GMT
Server: Apache/2.2.14 (Win32)
Allow: GET,HEAD,POST,OPTIONS,TRACE
Content-Type: httpd/unix-directory

TRACE, méthode

Il est utilisé pour renvoyer le contenu d'une requête HTTP au demandeur qui peut être utilisé à des fins de débogage au moment du développement. L'exemple suivant montre l'utilisation de la méthode TRACE -

TRACE / HTTP/1.1
Host: www.tutorialspoint.com
User-Agent: Mozilla/4.0 (compatible; MSIE5.01; Windows NT)

Le serveur enverra le message suivant en réponse à la demande ci-dessus -

HTTP/1.1 200 OK
Date: Mon, 27 Jul 2009 12:28:53 GMT
Server: Apache/2.2.14 (Win32)
Connection: close
Content-Type: message/http
Content-Length: 39

TRACE / HTTP/1.1
Host: www.tutorialspoint.com
User-Agent: Mozilla/4.0 (compatible; MSIE5.01; Windows NT)