Aplicacao Web: mudanças entre as edições

De Wiki Cursos IFPR Foz
Ir para navegaçãoIr para pesquisar
Linha 15: Linha 15:


Há duas versões do protocolo HTTP implementadas pelos navegadores, o HTTP/1.0 (RFC1945) e o HTTP/1.1 (RFC2068) e ambas as versões usam como protocolo de transporte o TCP.
Há duas versões do protocolo HTTP implementadas pelos navegadores, o HTTP/1.0 (RFC1945) e o HTTP/1.1 (RFC2068) e ambas as versões usam como protocolo de transporte o TCP.
Uma característica importante das mensagens do Protocolo HTTP é que todas são codificadas no formato [http://pt.wikipedia.org/wiki/ASCII '''ASCII'''], ou seja, uma mensagem simples de texto.


;Principais mensagens do [http://pt.wikipedia.org/wiki/Hypertext_Transfer_Protocol Protocolo HTTP]:
;Principais mensagens do [http://pt.wikipedia.org/wiki/Hypertext_Transfer_Protocol Protocolo HTTP]:

Edição das 20h36min de 31 de março de 2014

Aplicação Web

A aplicação WWW (World Wide Web), ou simplesmente Web, é uma aplicação que funciona sobre demanda, permitindo a navegação através páginas de hipertextos armazenadas em servidores Web.

Elementos da aplicação Web:

  • Clientes: São os navegadores Web, como Firefox, Chrome, IExplorer, etc.
  • Servidores: Armazenam as páginas Web e atendem as requisições de clientes, como por exemplo o servidor Web apache, disponível nas distribuições do Linux.
  • Protocolo HTTP (Hipertext Transfer Protocol): Define o formato das mensagens de requisição e resposta entre os navegadores Web (clientes) e servidores Web.
  • Protocolo de transporte: A aplicação Web é do tipo pedido/resposta e usa o protocolo TCP, o qual fornece transferência de dados garantida (livre de erros) para as mensagens do protocolo HTTP.
  • Porta: Os clientes requisitam páginas na porta 80 do servidor Web.
  • Páginas Web: As páginas Web armazenadas em servidores são codificadas no formato HTML (Hipertext Meta Language)

Protocolo HTTP

O protocolo HTTP usa o paradigma pedido/resposta para troca de mensagens entre o cliente e o servidor (CANTÚ, 2009, pag. 24-25).

Há duas versões do protocolo HTTP implementadas pelos navegadores, o HTTP/1.0 (RFC1945) e o HTTP/1.1 (RFC2068) e ambas as versões usam como protocolo de transporte o TCP.

Uma característica importante das mensagens do Protocolo HTTP é que todas são codificadas no formato ASCII, ou seja, uma mensagem simples de texto.

Principais mensagens do Protocolo HTTP
  • Pedido:
GET /index.html HTTP/1.1
Host: www.exemplo.com
Connection: close 
User-agent: Mozilla/4.0 
Accept-language:pt 
A primeira linha apresenta o comando básico para requisição de uma página Web, seguido pela parte do URL que indica objeto que se deseja e a versão do protocolo (GET /index.html HTTP/1.1). As linhas seguintes, chamadas de cabeçalho, são opcionais. A segunda linha (Host: www.exemplo.com) indica o nome computador onde reside o objeto; a terceira linha (Connection: close) informa para fechar a conexão após envio da resposta; a quarta linha (User-agent: Mozilla/4.0) indica o tipo do agente usuário utilizado e a linha (Accept-language:pt) indica que o português é a língua preferencial. Do ponto de vista do usuário o mesmo só enxerga o endereço URL que digitou e o navegador monta e envia as mensagens HTTP de forma transparente.
  • Resposta:
HTTP/1.1 200 OK 
Connection: close 
Date: Thu, 06 Aug 1998 12:00:15 GMT 
Server: Apache/1.3.0 (Unix) 
Last-Modified: Mon, 22 Jun 1998 09:23:24 GMT 
Content-Length: 6821 
Content-Type: text/html 
A primeira linha indica a versão do protocolo, o código e estado (status) da mensagem (HTTP/1.1 200 OK). A segunda linha (Connection: close) indica que a conexão TCP será encerrada; a terceira linha (Date: Thu, 06 Aug 1998 12:00:15 GMT) informa a data da última modificação no objeto solicitado, utilizada por servidores proxy; a quarta linha (Server: Apache/1.3.0 (Unix)) indica o tipo do servidor, a quinta linha (Content-Length: 6821) indica o tamanho do objeto em bytes e a última linha (Content-Type: text/html) informa o conteúdo da mensagem.
  • Outras respostas e códigos de status comuns:
200 OK
301 Moved Permanently
400 Bad Request
404 Not Found
505 HTTP Version Not Suported