SlideShare une entreprise Scribd logo
1  sur  12
Télécharger pour lire hors ligne
Protocolo HTTP




Marcondes Maçaneiro
Desenvolvimento WEB
Introdução ao Protocolo HTTP
Fonte: http://www.obasicodaweb.com/introducao-ao-http


 HTTP é um protocolo, uma série de regras que definem como um
determinado diálogo deve ser conduzido. Basicamente o protocolo
 define que perguntas podem ser feitas, e que respostas podem ser
 dadas a cada uma delas. Nesse diálogo, quem faz as perguntas (ou
 requisições) é o cliente HTTP — também chamado de user agent,
 que pode ser um browser, um robô (googlebot é um exemplo), um
leitor de tela, um script, ou qualquer outro programa que conheça e
 saiba como seguir o protocolo. Quem dá as respostas é o servidor
 HTTP (ou servidor web). Os dois servidores HTTP que dominam
    a quase totalidade do mercado hoje em dia são o Apache, da
               Apache Foundation e o IIS, da microsoft.
HTTP - O diálogo
●   Exemplo “Pergunta” ou Requisição

GET / HTTP/1.1
Host: dominio.com
User-Agent: Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US;
rv:1.7.12) Gecko/20050915 Firefox/1.0.7
Accept:
text/xml,application/xml,application/xhtml+xml,text/html;q=0.9,text
/plain;q=0.8,image/png,*/*;q=0.5
HTTP - O diálogo
●   Resposta


HTTP/1.x 200 OK
Date: Mon, 12 Dec 2005 04:15:03 GMT
Server: Apache/1.3.33 (Unix) DAV/1.0.3 mod_fastcgi/
2.4.2 mod_gzip/1.3.26.1a PHP/4.3.10 mod_ssl/2.8.22
OpenSSL/0.9.7e
Content-Type: text/html; charset=UTF-8
Protocolo HTTP: códigos de resposta
      mais comuns e seus significados
Fonte: http://www.obasicodaweb.com/http-codigos-de-resposta-mais-comuns-e-seus-significados
    Ao receber essa requisição, o servidor procura pelo recurso
 requisitado e envia uma resposta ao cliente. Essa resposta contém
um código de resposta, que consiste de um número e uma pequena
 descrição padrão do código. São vários os códigos possíveis, mas
por enquanto vamos dar uma olhada nos mais comuns. Os códigos
   de resposta seguem a seguinte numeração: começados com 1
 (1XX), que são códigos informativos; 2XX, que indicam sucesso;
3XX que reportam um redirecionamento; 4XX, que informam erros
          acontecidos no cliente e 5XX, erros no servidor.
Fonte: http://pt.kioskea.net/contents/internet/http.php3
http://livehttpheaders.mozdev.org/
●   Para visualizar o diálogo HTTP ao requisitar uma
    página web instale um complemento do Firefox
    chamado LiveHTTPHeaders. Esse complemento
    pode ser baixado no site acima.

●   Vejamos ele em Funcionamento
Termos e Definições
HTTP - Hypertext Transfer Protocol (Protocolo de transferência de
Hipertexto). Protocolo criado para possibilitar o tráfego de informações
com hipertexto na web. Veja o post Introdução ao HTTP.

Hipertexto - Texto que contém internamente referências a outros textos
ou documentos. Na web, o que caracteriza essas referências são os
hiperlinks, ou simplesmente links.

User agent - Uma aplicação que age como cliente em uma transação
cliente-servidor feita sobre um determinado protocolo de rede. Na web
esse protocolo é o HTTP e os user-agents são os browsers, crawlers,
dispositivos móveis, leitores de tela, painéis em braile e qualquer outra
aplicação usada por um usuário para navegar por páginas web.


  Leia mais em: http://www.obasicodaweb.com/termos-e-definicoes
Protocolo HTTP: métodos de requisição
 ●   O método de requisição é o primeiro dado enviado
     pelo user-agent ao fazer uma requisição HTTP ao
     servidor.
 ●   Vamos usar o código de exemplo do post de
     introdução ao protocolo HTTP.
 ●   Vejamos a primeira linha de uma requisição HTTP
     de exemplo: GET / HTTP/1.1

Fonte: http://www.obasicodaweb.com/http-metodos-requisicao
HTTP GET
●   Essa linha informa que a requisição se trata de uma
    recuperação de dados (método GET), usando o
    protocolo HTTP, versão 1.1. Esse método, GET, é
    justamente o primeiro de que vamos tratar,
    principalmente pelo fato de ser ele o método usado
    como padrão por qualquer user-agent e, por isso,
    ser, de longe, o método mais usado. O método GET
    tem duas propriedades importantes: deve ser seguro
    (safe) e idempotente (idempotent).
HTTP GET
●   ATENÇÃO!!!! Ser seguro significa que o método não deve ser
    usado para produzir mudanças nos dados que estão no servidor.
    Ou seja, nunca se deve usar o método GET para, por exemplo,
    atualizar um dado em um banco de dados.


●   Idempotente quer dizer que múltiplas requisições ao mesmo
    recurso usando o método devem ter o mesmo resultado que teria
    uma requisição apenas. A título de curiosidade, idempotente é a
    propriedade de um número que, multiplicado por ele mesmo,
    tem ele mesmo como resultado (n x n = n), em termos de
    números reais, apenas 0 e 1 têm essa propriedade.
HTTP - Métodos
Na disciplina usaremos os Métodos GET e POST os demais métodos não serão foco.
Mais detalhes podemos procurar em livros e na internet.
http://wagnerelias.com/2009/02/06/http-essentials/
http://pt.wikipedia.org/wiki/HTTP

Contenu connexe

Tendances

Introdução ao desenvolvimento Web
Introdução ao desenvolvimento WebIntrodução ao desenvolvimento Web
Introdução ao desenvolvimento WebSérgio Souza Costa
 
Introdução sobre desenvolvimento web
Introdução sobre desenvolvimento webIntrodução sobre desenvolvimento web
Introdução sobre desenvolvimento webRodrigo Rodrigues
 
Python - Dicionários
Python - DicionáriosPython - Dicionários
Python - DicionáriosMarcos Castro
 
20 coisas que você precisa saber sobre hospedagem de sites
20 coisas que você precisa saber sobre hospedagem de sites20 coisas que você precisa saber sobre hospedagem de sites
20 coisas que você precisa saber sobre hospedagem de sitesUOLHOST
 
Java introdução ao java
Java   introdução ao javaJava   introdução ao java
Java introdução ao javaArmando Daniel
 
Introdução a Gerência de Redes
Introdução a Gerência de RedesIntrodução a Gerência de Redes
Introdução a Gerência de RedesFrederico Madeira
 
Introdução à internet
Introdução à internetIntrodução à internet
Introdução à internetcrbmonteiro
 
Redes de computadores
Redes de computadoresRedes de computadores
Redes de computadoresJakson Silva
 
Introdução ao desenvolvimento da web.pptx
Introdução ao desenvolvimento da web.pptxIntrodução ao desenvolvimento da web.pptx
Introdução ao desenvolvimento da web.pptxMarceloRosenbrock1
 
Curso de HTML5 - Aula 01
Curso de HTML5 - Aula 01   Curso de HTML5 - Aula 01
Curso de HTML5 - Aula 01 Léo Dias
 
Apresentação php
Apresentação phpApresentação php
Apresentação phpwilliameier
 
A PESQUISA NA INTERNET
A PESQUISA NA INTERNETA PESQUISA NA INTERNET
A PESQUISA NA INTERNETAndrea Bruzaca
 
Criptografia simetrica e assimétrica
Criptografia simetrica e assimétricaCriptografia simetrica e assimétrica
Criptografia simetrica e assimétricaAnchises Moraes
 

Tendances (20)

Introdução ao desenvolvimento Web
Introdução ao desenvolvimento WebIntrodução ao desenvolvimento Web
Introdução ao desenvolvimento Web
 
Introdução sobre desenvolvimento web
Introdução sobre desenvolvimento webIntrodução sobre desenvolvimento web
Introdução sobre desenvolvimento web
 
Python - Dicionários
Python - DicionáriosPython - Dicionários
Python - Dicionários
 
20 coisas que você precisa saber sobre hospedagem de sites
20 coisas que você precisa saber sobre hospedagem de sites20 coisas que você precisa saber sobre hospedagem de sites
20 coisas que você precisa saber sobre hospedagem de sites
 
Aula01-JavaScript
Aula01-JavaScriptAula01-JavaScript
Aula01-JavaScript
 
Java introdução ao java
Java   introdução ao javaJava   introdução ao java
Java introdução ao java
 
Introdução a Gerência de Redes
Introdução a Gerência de RedesIntrodução a Gerência de Redes
Introdução a Gerência de Redes
 
Criação de Sites web Tutorial
Criação de Sites web TutorialCriação de Sites web Tutorial
Criação de Sites web Tutorial
 
Introdução à internet
Introdução à internetIntrodução à internet
Introdução à internet
 
Html Básico
Html BásicoHtml Básico
Html Básico
 
Redes de computadores
Redes de computadoresRedes de computadores
Redes de computadores
 
Servidor WEB
Servidor WEBServidor WEB
Servidor WEB
 
Introdução ao desenvolvimento da web.pptx
Introdução ao desenvolvimento da web.pptxIntrodução ao desenvolvimento da web.pptx
Introdução ao desenvolvimento da web.pptx
 
Curso de Desenvolvimento Web - Módulo 02 - CSS
Curso de Desenvolvimento Web - Módulo 02 - CSSCurso de Desenvolvimento Web - Módulo 02 - CSS
Curso de Desenvolvimento Web - Módulo 02 - CSS
 
Curso de HTML5 - Aula 01
Curso de HTML5 - Aula 01   Curso de HTML5 - Aula 01
Curso de HTML5 - Aula 01
 
Apresentação php
Apresentação phpApresentação php
Apresentação php
 
A PESQUISA NA INTERNET
A PESQUISA NA INTERNETA PESQUISA NA INTERNET
A PESQUISA NA INTERNET
 
Introdução à Linguagem Ruby
Introdução à Linguagem RubyIntrodução à Linguagem Ruby
Introdução à Linguagem Ruby
 
Criptografia simetrica e assimétrica
Criptografia simetrica e assimétricaCriptografia simetrica e assimétrica
Criptografia simetrica e assimétrica
 
Introdução ao HTML
Introdução ao HTMLIntrodução ao HTML
Introdução ao HTML
 

En vedette

PROTOCOLO FTP
PROTOCOLO FTPPROTOCOLO FTP
PROTOCOLO FTPRuby Mg
 
Protocolo DHCP - Noções básicas - Bóson Treinamentos
Protocolo DHCP - Noções básicas - Bóson TreinamentosProtocolo DHCP - Noções básicas - Bóson Treinamentos
Protocolo DHCP - Noções básicas - Bóson TreinamentosFábio dos Reis
 
Imurl slides
Imurl slidesImurl slides
Imurl slidesPelo Siro
 
Protocolo ftp
Protocolo ftpProtocolo ftp
Protocolo ftpNeftisLis
 
Aula02 - protocolos de email
Aula02 -  protocolos de emailAula02 -  protocolos de email
Aula02 - protocolos de emailCarlos Veiga
 
Correio Eletrônico e os  protocolos SMTP, POP3 e IMAP
Correio Eletrônico e os  protocolos SMTP, POP3 e IMAPCorreio Eletrônico e os  protocolos SMTP, POP3 e IMAP
Correio Eletrônico e os  protocolos SMTP, POP3 e IMAPRicardo Ferreira
 
PROTOCOLO HTTPS
PROTOCOLO HTTPSPROTOCOLO HTTPS
PROTOCOLO HTTPSByron
 
Protocolo SMTP (Simple Mail Transfer Protocol)
Protocolo  SMTP (Simple Mail Transfer Protocol)Protocolo  SMTP (Simple Mail Transfer Protocol)
Protocolo SMTP (Simple Mail Transfer Protocol)Luis Alfredo Sanchez
 
Protocolos- SMTP, POP3 e IMAP4
Protocolos- SMTP, POP3 e IMAP4Protocolos- SMTP, POP3 e IMAP4
Protocolos- SMTP, POP3 e IMAP4Felipe Weizenmann
 
Aula 6 - Redes de Computadores A - Endereçamento IP
Aula 6 - Redes de Computadores A - Endereçamento IPAula 6 - Redes de Computadores A - Endereçamento IP
Aula 6 - Redes de Computadores A - Endereçamento IPFilipo Mór
 
Vantagens e desvantagens em topologias de redes
Vantagens e desvantagens em topologias de redesVantagens e desvantagens em topologias de redes
Vantagens e desvantagens em topologias de redesMarco Martins
 

En vedette (20)

Http conceitos
Http   conceitosHttp   conceitos
Http conceitos
 
Protocolo HTTP
Protocolo HTTPProtocolo HTTP
Protocolo HTTP
 
PROTOCOLO FTP
PROTOCOLO FTPPROTOCOLO FTP
PROTOCOLO FTP
 
Protocolo ftp
Protocolo ftpProtocolo ftp
Protocolo ftp
 
Protocolo DHCP - Noções básicas - Bóson Treinamentos
Protocolo DHCP - Noções básicas - Bóson TreinamentosProtocolo DHCP - Noções básicas - Bóson Treinamentos
Protocolo DHCP - Noções básicas - Bóson Treinamentos
 
Ipv4 e ipv6
Ipv4 e ipv6Ipv4 e ipv6
Ipv4 e ipv6
 
Imurl slides
Imurl slidesImurl slides
Imurl slides
 
Protocolo ftp
Protocolo ftpProtocolo ftp
Protocolo ftp
 
Aula02 - protocolos de email
Aula02 -  protocolos de emailAula02 -  protocolos de email
Aula02 - protocolos de email
 
Protocolos
ProtocolosProtocolos
Protocolos
 
Protocolo pop3
Protocolo pop3Protocolo pop3
Protocolo pop3
 
Correio Eletrônico e os  protocolos SMTP, POP3 e IMAP
Correio Eletrônico e os  protocolos SMTP, POP3 e IMAPCorreio Eletrônico e os  protocolos SMTP, POP3 e IMAP
Correio Eletrônico e os  protocolos SMTP, POP3 e IMAP
 
PROTOCOLO HTTPS
PROTOCOLO HTTPSPROTOCOLO HTTPS
PROTOCOLO HTTPS
 
Endereçamento IPV4
Endereçamento IPV4Endereçamento IPV4
Endereçamento IPV4
 
Protocolo SMTP (Simple Mail Transfer Protocol)
Protocolo  SMTP (Simple Mail Transfer Protocol)Protocolo  SMTP (Simple Mail Transfer Protocol)
Protocolo SMTP (Simple Mail Transfer Protocol)
 
Calculo de endereço ip
Calculo de endereço ipCalculo de endereço ip
Calculo de endereço ip
 
Protocolo http
Protocolo httpProtocolo http
Protocolo http
 
Protocolos- SMTP, POP3 e IMAP4
Protocolos- SMTP, POP3 e IMAP4Protocolos- SMTP, POP3 e IMAP4
Protocolos- SMTP, POP3 e IMAP4
 
Aula 6 - Redes de Computadores A - Endereçamento IP
Aula 6 - Redes de Computadores A - Endereçamento IPAula 6 - Redes de Computadores A - Endereçamento IP
Aula 6 - Redes de Computadores A - Endereçamento IP
 
Vantagens e desvantagens em topologias de redes
Vantagens e desvantagens em topologias de redesVantagens e desvantagens em topologias de redes
Vantagens e desvantagens em topologias de redes
 

Similaire à Protocolo Http

Similaire à Protocolo Http (20)

Aula10 -PHP
Aula10 -PHPAula10 -PHP
Aula10 -PHP
 
O get and post para etico hacker
O get and post para etico hackerO get and post para etico hacker
O get and post para etico hacker
 
Conhecendo o Novo REST Framework
Conhecendo o Novo REST FrameworkConhecendo o Novo REST Framework
Conhecendo o Novo REST Framework
 
Aplicações web parte 1
Aplicações web parte 1Aplicações web parte 1
Aplicações web parte 1
 
Dawi o protocolo-http
Dawi o protocolo-httpDawi o protocolo-http
Dawi o protocolo-http
 
4. Introdução ao PHP.pdf
4. Introdução ao PHP.pdf4. Introdução ao PHP.pdf
4. Introdução ao PHP.pdf
 
Tecnologia em Redes - Servidor WEB
Tecnologia em Redes - Servidor WEBTecnologia em Redes - Servidor WEB
Tecnologia em Redes - Servidor WEB
 
http
httphttp
http
 
Http (hyper text transfer protocol)
Http (hyper text transfer protocol)Http (hyper text transfer protocol)
Http (hyper text transfer protocol)
 
Aula 1
Aula 1Aula 1
Aula 1
 
Hyper Text Transfer Protocol (HTTP)
Hyper Text Transfer Protocol (HTTP)Hyper Text Transfer Protocol (HTTP)
Hyper Text Transfer Protocol (HTTP)
 
Consumindo dados via web service no android
Consumindo dados via web service no androidConsumindo dados via web service no android
Consumindo dados via web service no android
 
Web service
Web serviceWeb service
Web service
 
Arquitetura web e o php
Arquitetura web e o phpArquitetura web e o php
Arquitetura web e o php
 
Php
PhpPhp
Php
 
Ferramentas Web 2.0
Ferramentas Web 2.0Ferramentas Web 2.0
Ferramentas Web 2.0
 
Aula01
Aula01Aula01
Aula01
 
Uma Introdução a ASP.NET Web API
Uma Introdução a ASP.NET Web APIUma Introdução a ASP.NET Web API
Uma Introdução a ASP.NET Web API
 
Introdução à Servlets e JSP
Introdução à Servlets e JSPIntrodução à Servlets e JSP
Introdução à Servlets e JSP
 
Ferramentas Web 2.0
Ferramentas Web 2.0Ferramentas Web 2.0
Ferramentas Web 2.0
 

Plus de Marcondes Maçaneiro

Plus de Marcondes Maçaneiro (11)

TDC2014 - Arduino Legacy
TDC2014 - Arduino LegacyTDC2014 - Arduino Legacy
TDC2014 - Arduino Legacy
 
Palestra Computer on the Beatch 2014
Palestra Computer on the Beatch 2014Palestra Computer on the Beatch 2014
Palestra Computer on the Beatch 2014
 
Apresentação sbseg
Apresentação sbsegApresentação sbseg
Apresentação sbseg
 
JAVAle - Open-IdentityStack
JAVAle - Open-IdentityStackJAVAle - Open-IdentityStack
JAVAle - Open-IdentityStack
 
Presentation
PresentationPresentation
Presentation
 
Apresentação cloud computing para sistemas de informação
Apresentação cloud computing para sistemas de informaçãoApresentação cloud computing para sistemas de informação
Apresentação cloud computing para sistemas de informação
 
Automação na nuvem java, cloud e integração contínua
Automação na nuvem  java, cloud e integração contínuaAutomação na nuvem  java, cloud e integração contínua
Automação na nuvem java, cloud e integração contínua
 
Apresentação da JAVale para o NIAVI
Apresentação da JAVale para o NIAVIApresentação da JAVale para o NIAVI
Apresentação da JAVale para o NIAVI
 
Apresentação educar reitoria
Apresentação educar reitoriaApresentação educar reitoria
Apresentação educar reitoria
 
Tdc2013 trilha cloud
Tdc2013   trilha cloudTdc2013   trilha cloud
Tdc2013 trilha cloud
 
Tdc2013 trilha arduino
Tdc2013   trilha arduinoTdc2013   trilha arduino
Tdc2013 trilha arduino
 

Protocolo Http

  • 2. Introdução ao Protocolo HTTP Fonte: http://www.obasicodaweb.com/introducao-ao-http HTTP é um protocolo, uma série de regras que definem como um determinado diálogo deve ser conduzido. Basicamente o protocolo define que perguntas podem ser feitas, e que respostas podem ser dadas a cada uma delas. Nesse diálogo, quem faz as perguntas (ou requisições) é o cliente HTTP — também chamado de user agent, que pode ser um browser, um robô (googlebot é um exemplo), um leitor de tela, um script, ou qualquer outro programa que conheça e saiba como seguir o protocolo. Quem dá as respostas é o servidor HTTP (ou servidor web). Os dois servidores HTTP que dominam a quase totalidade do mercado hoje em dia são o Apache, da Apache Foundation e o IIS, da microsoft.
  • 3. HTTP - O diálogo ● Exemplo “Pergunta” ou Requisição GET / HTTP/1.1 Host: dominio.com User-Agent: Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.7.12) Gecko/20050915 Firefox/1.0.7 Accept: text/xml,application/xml,application/xhtml+xml,text/html;q=0.9,text /plain;q=0.8,image/png,*/*;q=0.5
  • 4. HTTP - O diálogo ● Resposta HTTP/1.x 200 OK Date: Mon, 12 Dec 2005 04:15:03 GMT Server: Apache/1.3.33 (Unix) DAV/1.0.3 mod_fastcgi/ 2.4.2 mod_gzip/1.3.26.1a PHP/4.3.10 mod_ssl/2.8.22 OpenSSL/0.9.7e Content-Type: text/html; charset=UTF-8
  • 5. Protocolo HTTP: códigos de resposta mais comuns e seus significados Fonte: http://www.obasicodaweb.com/http-codigos-de-resposta-mais-comuns-e-seus-significados Ao receber essa requisição, o servidor procura pelo recurso requisitado e envia uma resposta ao cliente. Essa resposta contém um código de resposta, que consiste de um número e uma pequena descrição padrão do código. São vários os códigos possíveis, mas por enquanto vamos dar uma olhada nos mais comuns. Os códigos de resposta seguem a seguinte numeração: começados com 1 (1XX), que são códigos informativos; 2XX, que indicam sucesso; 3XX que reportam um redirecionamento; 4XX, que informam erros acontecidos no cliente e 5XX, erros no servidor.
  • 7. http://livehttpheaders.mozdev.org/ ● Para visualizar o diálogo HTTP ao requisitar uma página web instale um complemento do Firefox chamado LiveHTTPHeaders. Esse complemento pode ser baixado no site acima. ● Vejamos ele em Funcionamento
  • 8. Termos e Definições HTTP - Hypertext Transfer Protocol (Protocolo de transferência de Hipertexto). Protocolo criado para possibilitar o tráfego de informações com hipertexto na web. Veja o post Introdução ao HTTP. Hipertexto - Texto que contém internamente referências a outros textos ou documentos. Na web, o que caracteriza essas referências são os hiperlinks, ou simplesmente links. User agent - Uma aplicação que age como cliente em uma transação cliente-servidor feita sobre um determinado protocolo de rede. Na web esse protocolo é o HTTP e os user-agents são os browsers, crawlers, dispositivos móveis, leitores de tela, painéis em braile e qualquer outra aplicação usada por um usuário para navegar por páginas web. Leia mais em: http://www.obasicodaweb.com/termos-e-definicoes
  • 9. Protocolo HTTP: métodos de requisição ● O método de requisição é o primeiro dado enviado pelo user-agent ao fazer uma requisição HTTP ao servidor. ● Vamos usar o código de exemplo do post de introdução ao protocolo HTTP. ● Vejamos a primeira linha de uma requisição HTTP de exemplo: GET / HTTP/1.1 Fonte: http://www.obasicodaweb.com/http-metodos-requisicao
  • 10. HTTP GET ● Essa linha informa que a requisição se trata de uma recuperação de dados (método GET), usando o protocolo HTTP, versão 1.1. Esse método, GET, é justamente o primeiro de que vamos tratar, principalmente pelo fato de ser ele o método usado como padrão por qualquer user-agent e, por isso, ser, de longe, o método mais usado. O método GET tem duas propriedades importantes: deve ser seguro (safe) e idempotente (idempotent).
  • 11. HTTP GET ● ATENÇÃO!!!! Ser seguro significa que o método não deve ser usado para produzir mudanças nos dados que estão no servidor. Ou seja, nunca se deve usar o método GET para, por exemplo, atualizar um dado em um banco de dados. ● Idempotente quer dizer que múltiplas requisições ao mesmo recurso usando o método devem ter o mesmo resultado que teria uma requisição apenas. A título de curiosidade, idempotente é a propriedade de um número que, multiplicado por ele mesmo, tem ele mesmo como resultado (n x n = n), em termos de números reais, apenas 0 e 1 têm essa propriedade.
  • 12. HTTP - Métodos Na disciplina usaremos os Métodos GET e POST os demais métodos não serão foco. Mais detalhes podemos procurar em livros e na internet. http://wagnerelias.com/2009/02/06/http-essentials/ http://pt.wikipedia.org/wiki/HTTP