HTTP - Métodos
O conjunto de métodos comuns para HTTP / 1.1 é definido abaixo e este conjunto pode ser expandido com base nos requisitos. Esses nomes de método diferenciam maiúsculas de minúsculas e devem ser usados em maiúsculas.
SN | Método e Descrição |
---|---|
1 | GET O método GET é usado para recuperar informações de um determinado servidor usando um determinado URI. As solicitações que usam GET devem recuperar apenas dados e não devem ter nenhum outro efeito sobre os dados. |
2 | HEAD O mesmo que GET, mas transfere apenas a linha de status e a seção de cabeçalho. |
3 | POST Uma solicitação POST é usada para enviar dados para o servidor, por exemplo, informações do cliente, upload de arquivo, etc. usando formulários HTML. |
4 | PUT Substitui todas as representações atuais do recurso de destino com o conteúdo carregado. |
5 | DELETE Remove todas as representações atuais do recurso de destino fornecidas por um URI. |
6 | CONNECT Estabelece um túnel para o servidor identificado por um determinado URI. |
7 | OPTIONS Descreve as opções de comunicação para o recurso de destino. |
8 | TRACE Executa um teste de loopback de mensagem ao longo do caminho para o recurso de destino. |
Método GET
Uma solicitação GET recupera dados de um servidor da web especificando parâmetros na parte do URL da solicitação. Este é o principal método usado para recuperação de documentos. O exemplo a seguir usa o método GET para buscar hello.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
A resposta do servidor em relação à solicitação GET acima será a seguinte:
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>
Método HEAD
O método HEAD é funcionalmente semelhante a GET, exceto que o servidor responde com uma linha de resposta e cabeçalhos, mas sem corpo de entidade. O exemplo a seguir usa o método HEAD para buscar informações de cabeçalho sobre hello.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
A resposta do servidor em relação à solicitação GET acima será a seguinte:
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
Você pode notar que aqui o servidor não envia nenhum dado após o cabeçalho.
Método POST
O método POST é usado quando você deseja enviar alguns dados para o servidor, por exemplo, atualização de arquivo, dados de formulário, etc. O exemplo a seguir faz uso do método POST para enviar dados de um formulário ao servidor, que serão processados por um process.cgi e finalmente uma resposta será retornada:
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>
O script do lado do servidor process.cgi processa os dados passados e envia a seguinte resposta:
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étodo PUT
O método PUT é usado para solicitar ao servidor que armazene o corpo da entidade incluído em um local especificado pelo URL fornecido. O exemplo a seguir solicita que o servidor salve o corpo de entidade fornecido emhello.htm na raiz do servidor:
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>
O servidor irá armazenar o determinado corpo-entidade em hello.htm arquivo e enviará a seguinte resposta de volta ao cliente:
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>
Método DELETE
O método DELETE é usado para solicitar ao servidor a exclusão de um arquivo em um local especificado pelo URL fornecido. O exemplo a seguir solicita que o servidor exclua o arquivo fornecidohello.htm na raiz do servidor:
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
O servidor irá deletar o arquivo mencionado hello.htm e enviará a seguinte resposta de volta ao cliente:
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>
Método CONNECT
O método CONNECT é usado pelo cliente para estabelecer uma conexão de rede com um servidor da web por HTTP. O exemplo a seguir solicita uma conexão com um servidor da web em execução no host tutorialspoint.com:
CONNECT www.tutorialspoint.com HTTP/1.1
User-Agent: Mozilla/4.0 (compatible; MSIE5.01; Windows NT)
A conexão é estabelecida com o servidor e a seguinte resposta é enviada de volta ao cliente:
HTTP/1.1 200 Connection established
Date: Mon, 27 Jul 2009 12:28:53 GMT
Server: Apache/2.2.14 (Win32)
Método OPÇÕES
O método OPTIONS é usado pelo cliente para descobrir os métodos HTTP e outras opções suportadas por um servidor web. O cliente pode especificar um URL para o método OPTIONS ou um asterisco (*) para se referir a todo o servidor. O exemplo a seguir solicita uma lista de métodos suportados por um servidor da web em execução em tutorialspoint.com:
OPTIONS * HTTP/1.1
User-Agent: Mozilla/4.0 (compatible; MSIE5.01; Windows NT)
O servidor enviará uma informação com base na configuração atual do servidor, por exemplo:
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
Método TRACE
O método TRACE é usado para ecoar o conteúdo de uma solicitação HTTP de volta para o solicitante, que pode ser usado para fins de depuração no momento do desenvolvimento. O exemplo a seguir mostra o uso do método TRACE:
TRACE / HTTP/1.1
Host: www.tutorialspoint.com
User-Agent: Mozilla/4.0 (compatible; MSIE5.01; Windows NT)
O servidor enviará a seguinte mensagem em resposta à solicitação acima:
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)