Um pouco do protocolo HTTP

O presente artigo tem por objeto tratar do conceito do protocolo HTTP usado em páginas web. O mesmo trata de conceitos da World Wide Web, conceitos sobre a troca de mensagens cliente-servidor através do protocolo HTTP, ampliando desta forma o conhecimento e o entendimento do assunto.

[ Hits: 58.160 ]

Por: Leandro Rodrigo em 31/05/2011 | Blog: http://leandro-robotica.blogspot.com/


Métodos HTTP



O protocolo HTTP define um conjunto de métodos que o cliente pode invocar, que funcionam como comandos enviados ao servidor web. O protocolo HTTP 1.0, descrito na RFC 1945 (Berners-Lee et al., 1996), são eles GET HEAD e POST.

As mensagens de requisição e resposta do protocolo HTTP seguem um padrão, uma requisição é constituída de uma linha informando o método a ser executado em seguida de um cabeçalho que pode ter mais de uma linha e por ultimo o corpo da mensagem caso seja necessário.

Segundo (TANEMBAUM, 2003) o método GET é uma solicitação ao servidor de envio de página ou objeto exemplo:

GET /index.html HTTP/1.1
Host: www.unemat.br
Connection: close
User-agent: Mozilla/4.0
Accept-language: fr


Neste modelo de requisição podemos notar que na primeira linha está o tipo do método (GET) o arquivo solicitado e por último o modelo do HTTP usado na segunda linha está o endereço do host, de onde está hospedado o objeto, Connection: close mostra que não é uma conexão persistente, User-agent: informa o browser utilizado e Accept-language: refere-se a linguagem que o é solicitada, caso ela não exista no domínio será usado a linguagem default.

A resposta do servidor deve ser:

HTTP/1.1 200 OK
Connection: close
Date: Mon, 12 Dec 2005 04:15:03 GMT
Server: Apache/1.3.0 (Unix)
Last-Modified: Sun. 5 May 2005 09:25:23 GMT
Content-Length: 6821
Content-Type: text/html


Analisando a mensagem de resposta identificamos na primeira linha o estado da solicitação que no modelo acima está OK, o servidor está enviando o objeto solicitado, Connection: close está informando que é uma conexão não persistente, Date é a data de acesso ao objeto, Server o tipo de servidor web, Last-Modified data da última alteração ou criação do arquivo Content-Length, tamanho do arquivo e por último Content-Type, responsável por informar o tipo do arquivo.

Abaixo segue relação dos métodos usados:
  • GET: Método que solicita algum recurso ou objeto ao servidor
  • HEAD: Solicita informações de um determinado objeto sem que esse seja enviado ao cliente apenas para testa a validade do último acesso.
  • POST: Método usado para envio de arquivo dados ou formulário HTML ao servidor.
  • OPTIONS: Por meio desse método o cliente obtém as propriedades do servidor.
  • DELETE: Informa por meio do URL o objeto a ser deletado.
  • TRACE: Para enviar mensagem do tipo loopback para teste.
  • PUT: Aceita criar ou modificar algum objeto do servidor.
  • CONNECT: Comunicar com servidores Proxy.

Página anterior     Próxima página

Páginas do artigo
   1. A World Wide Web
   2. O lado cliente
   3. O lado servidor
   4. Métodos HTTP
   5. Cookies
   6. Conclusão
Outros artigos deste autor

Windowbuilder, o plugin do Google para trabalhar com interface gráfica no Eclipse

Arduino - Visão Geral

Leitura recomendada

Instalando e configurando um servidor DNS (Bind)

Fuja da pirataria, use Last.fm

A gerência da miséria

Imspector, um proxy para mensageiros instantâneos no Linux

WIMAX (parte 1)

  
Comentários
[1] Comentário enviado por fla_torres em 31/05/2011 - 19:38h

Seria bacana incluir mais sobre os headers cache-control, vary, accept-encoding, etag, connection. É bem útil para quem se preocupa com cache e performance.

[2] Comentário enviado por bilbobolseiro em 31/05/2011 - 21:25h

Muito bom esse artigo. Ele deixou mais claro, como acontece por dentro da internet a transmissao de dados....

[3] Comentário enviado por albfneto em 31/05/2011 - 23:45h

Artigo ótimo, cuidadoso, minucioso, bem redigido,com referências Bibliográficas, 10!

[4] Comentário enviado por piquen0 em 01/06/2011 - 08:33h

Obrigado!!!


Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts