SlideShare a Scribd company logo
1 of 33
Download to read offline
Cabeçalhos do protocolo HTTP 2011-2012 Metodologias de Programação IV
Mensagem dopedido HTTP (Porto 80 de TCP) Cliente HTTP (por ex.,o navegador) Servidor HTTP(Apache, IIS, etc.) Mensagem daresposta HTTP
Mensagens do HTTP Pedido Linha de pedido CRLF Linhas de cabeçalhos CRLF CRLF Corpo Resposta Linha de estado CRLF Linhas de cabeçalhos CRLF CRLF Corpo
Pedido HTTP GET /tc/home.html HTTP/1.1 Host: www.tribunalconstitucional.pt ...
Resposta HTTP HTTP/1.1 200 OK Content-Type: text/html Content-Length: 9934 ...
Lista total de cabeçalhos: Vamos ver alguns exemplos HypertextTransferProtocol -- HTTP/1.1 http://www.w3.org/Protocols/rfc2616/rfc2616.html
GET /tc/home.html HTTP/1.1 Host: www.tribunalconstitucional.pt Date: Tue, 30 Sep 2008 13:45:29 GMT User-Agent: Mozilla/5.0 (Windows; U; Windows NT 6.0; en-US; rv:1.9.0.3) Gecko/2008092417 Firefox/3.0.3 Referer: http://home.utad.pt/~leonelm/teste.htm If-Modified-Since: Tue, 30 Sep 2008 13:40:29 GMT
GET /tc/home.html HTTP/1.1 Host: www.tribunalconstitucional.pt Date: Tue, 30 Sep 2008 13:45:29 GMT User-Agent: Mozilla/5.0 (Windows; U; Windows NT 6.0; en-US; rv:1.9.0.3) Gecko/2008092417 Firefox/3.0.3 Referer: http://home.utad.pt/~leonelm/teste.htm If-Modified-Since: Tue, 30 Sep 2008 13:40:29 GMT
GET /tc/home.html HTTP/1.1 Host: www.tribunalconstitucional.pt Date: Tue, 30 Sep 2008 13:45:29 GMT User-Agent: Mozilla/5.0 (Windows; U; Windows NT 6.0; en-US; rv:1.9.0.3) Gecko/2008092417 Firefox/3.0.3 Referer: http://home.utad.pt/~leonelm/teste.htm If-Modified-Since: Tue, 30 Sep 2008 13:40:29 GMT
GET /tc/home.html HTTP/1.1 Host: www.tribunalconstitucional.pt Date: Tue, 30 Sep 2008 13:45:29 GMT User-Agent: Mozilla/5.0 (Windows; U; Windows NT 6.0; en-US; rv:1.9.0.3) Gecko/2008092417 Firefox/3.0.3 Referer: http://home.utad.pt/~leonelm/teste.htm If-Modified-Since: Tue, 30 Sep 2008 13:40:29 GMT
GET /tc/home.html HTTP/1.1 Host: www.tribunalconstitucional.pt Date: Tue, 30 Sep 2008 13:45:29 GMT User-Agent: Mozilla/5.0 (Windows; U; Windows NT 6.0; en-US; rv:1.9.0.3) Gecko/2008092417 Firefox/3.0.3 Referer: http://home.utad.pt/~leonelm/teste.htm If-Modified-Since: Tue, 30 Sep 2008 13:40:29 GMT
HTTP/1.1 200 OK Server: Microsoft-IIS/4.0 Date: Tue, 30 Sep 2008 13:45:38 GMT Content-Type: text/html Accept-Ranges: bytes Last-Modified: Wed, 06 Jan 1999 18:56:06 GMT Content-Length: 9934
HTTP/1.1 200 OK Server: Microsoft-IIS/4.0 Date: Tue, 30 Sep 2008 13:45:38 GMT Content-Type: text/html Accept-Ranges: bytes Last-Modified: Wed, 06 Jan 1999 18:56:06 GMT Content-Length: 9934
HTTP/1.1 200 OK Server: Microsoft-IIS/4.0 Date: Tue, 30 Sep 2008 13:45:38 GMT Content-Type: text/html Accept-Ranges: bytes Last-Modified: Wed, 06 Jan 1999 18:56:06 GMT Content-Length: 9934
HTTP/1.1 200 OK Server: Microsoft-IIS/4.0 Date: Tue, 30 Sep 2008 13:45:38 GMT Content-Type: text/html Accept-Ranges: bytes Last-Modified: Wed, 06 Jan 1999 18:56:06 GMT Content-Length: 9934
HTTP/1.1 200 OK Server: Microsoft-IIS/4.0 Date: Tue, 30 Sep 2008 13:45:38 GMT Content-Type: text/html Accept-Ranges: bytes Last-Modified: Wed, 06 Jan 1999 18:56:06 GMT Content-Length: 9934
HTTP/1.1 200 OK Server: Microsoft-IIS/4.0 Date: Tue, 30 Sep 2008 13:45:38 GMT Content-Type: text/html Accept-Ranges: bytes Last-Modified: Wed, 06 Jan 1999 18:56:06 GMT Content-Length: 9934
Quem define (mete) os cabeçalhos dos pedidos? Quem define (mete) os cabeçalhos das respostas de conteúdo estático? Quem define (mete) os cabeçalhos das respostas de conteúdo dinâmico?
function ajax(url, vars, callbackFunction) {    var request = new XMLHttpRequest();    request.open("POST", url, true);    request.setRequestHeader(               "Content-Type",               "application/x-www-form-urlencoded");    request.onreadystatechange = function() {       if (request.readyState == 4 &&           request.status == 200) {              if (request.responseText) {                 callbackFunction(request.responseText);              }           }    };    request.send(vars); } No navegador (pedido)
function ajax(url, vars, callbackFunction) {    var request = new XMLHttpRequest();    request.open("POST", url, true);    request.setRequestHeader(               "Content-Type",               "application/x-www-form-urlencoded");    request.onreadystatechange = function() {       if (request.readyState == 4 &&           request.status == 200) {              if (request.responseText) {                 callbackFunction(request.responseText);              }           }    };    request.send(vars); } No browser (pedido)
<% Response.AddHeader "CustomHeader", "CustomValue" %> <HTML> <TITLE>Teste</TITLE> <BODY><p>Esta p&aacute;gina tem um cabe&ccedil;alho HTTP personalizado</p> </BODY> </HTML> No servidor (resposta)
<% Response.AddHeader "CustomHeader", "CustomValue" %> <HTML> <TITLE>Teste</TITLE> <BODY><p>Esta p&aacute;gina tem um cabe&ccedil;alho HTTP personalizado</p> </BODY> </HTML> No servidor (resposta)
<HTML> <TITLE>Teste</TITLE> <BODY><p>Esta p&aacute;gina tem um cabe&ccedil;alho HTTP personalizado</p> <% Response.AddHeader "CustomHeader", "CustomValue" %> </BODY> </HTML> Isto pode funcionar?
Navegador pede a página Servidor cria a resposta, excepto corpo Servidor vai lendo o ficheiro da página Servidor copia o conteúdo do ficheiro para o corpo <% %> ? Não Sim Servidor vai enviando o corpo da página Servidor executa o código e cria mais corpo
Quando chega ao código, já se acabaram os cabeçalhos e já começou a ser enviado o corpo da resposta... <HTML> <TITLE>Teste</TITLE> <BODY><p>Esta p&aacute;gina tem um cabe&ccedil;alho HTTP personalizado</p> <% Response.AddHeader "CustomHeader", "CustomValue" %> </BODY> </HTML>
Mas há servidores que implementam buffering da resposta: Browser pede a página Servidor vai criando a resposta em memória intermédia (buffer) Servidor cria a resposta, excepto corpo Servidor vai lendo o ficheiro da página Servidor copia o conteúdo do ficheiro para o corpo <% %> ? Não Sim Servidor executa o código e cria mais corpo
Mas há servidores que implementam buffering da resposta: Browser pede a página Servidor vai criando a resposta em memória intermédia (buffer) até chegar ao fim do corpo Servidor cria a resposta, excepto corpo Servidor vai lendo o ficheiro da página Servidor copia o conteúdo do ficheiro para o corpo <% %> ? Não Sim Servidor executa o código e cria mais corpo Servidor envia o conteúdo do buffer <% Response.Flush() %>
Com buffering activo no servidor (default no IIS 5.0 e mais recentes), isto funciona <HTML> <TITLE>Teste</TITLE> <BODY><p>Esta p&aacute;gina tem um cabe&ccedil;alho HTTP personalizado</p> <% Response.AddHeader "CustomHeader", "CustomValue" %> </BODY> </HTML>
Leituras associadas Web ApplicationArchitecture, Second Edition Cap. 3: “Birth of theWeb: HTTP”, págs. 44 a 60. HypertextTransferProtocol -- HTTP/1.1 http://www.w3.org/Protocols/rfc2616/rfc2616.html
Tipos mime no protocolo http Próxima secção

More Related Content

What's hot

Como criar um domínio e hospedagem gratuitos
Como criar um domínio e hospedagem gratuitosComo criar um domínio e hospedagem gratuitos
Como criar um domínio e hospedagem gratuitosmarianethais
 
Criando um site com LAMP e Joomla em 30 minutos
Criando um site com LAMP e Joomla em 30 minutosCriando um site com LAMP e Joomla em 30 minutos
Criando um site com LAMP e Joomla em 30 minutosFernando Mercês
 
Alta Performance de Aplicações PHP com Nginx
Alta Performance de Aplicações PHP com NginxAlta Performance de Aplicações PHP com Nginx
Alta Performance de Aplicações PHP com NginxThiago Paes
 
Protocolos HTTP e HTTPS
Protocolos HTTP e HTTPSProtocolos HTTP e HTTPS
Protocolos HTTP e HTTPSTrabalhosCVIGR
 
Protocolos HTTP e HTTPS
Protocolos HTTP e HTTPSProtocolos HTTP e HTTPS
Protocolos HTTP e HTTPSTrabalhosCVIGR
 
Como o HTTP/2 vai mudar sua vida
Como o HTTP/2 vai mudar sua vidaComo o HTTP/2 vai mudar sua vida
Como o HTTP/2 vai mudar sua vidaCaelum
 
Projeto Terminais Leves Linux
Projeto Terminais Leves LinuxProjeto Terminais Leves Linux
Projeto Terminais Leves LinuxMarco Neves
 
Protocolo http
Protocolo httpProtocolo http
Protocolo httpBiel2013a
 
Introdução à Internet, Http e HTML
Introdução à Internet, Http e HTMLIntrodução à Internet, Http e HTML
Introdução à Internet, Http e HTMLEduardo Mendes
 
Aula03 - protocolo http
Aula03 -  protocolo httpAula03 -  protocolo http
Aula03 - protocolo httpCarlos Veiga
 

What's hot (20)

HTTP - Visão geral
HTTP - Visão geralHTTP - Visão geral
HTTP - Visão geral
 
Como criar um domínio e hospedagem gratuitos
Como criar um domínio e hospedagem gratuitosComo criar um domínio e hospedagem gratuitos
Como criar um domínio e hospedagem gratuitos
 
Parte2c
Parte2cParte2c
Parte2c
 
Criando um site com LAMP e Joomla em 30 minutos
Criando um site com LAMP e Joomla em 30 minutosCriando um site com LAMP e Joomla em 30 minutos
Criando um site com LAMP e Joomla em 30 minutos
 
Alta Performance de Aplicações PHP com Nginx
Alta Performance de Aplicações PHP com NginxAlta Performance de Aplicações PHP com Nginx
Alta Performance de Aplicações PHP com Nginx
 
Protocolos HTTP e HTTPS
Protocolos HTTP e HTTPSProtocolos HTTP e HTTPS
Protocolos HTTP e HTTPS
 
Protocolos HTTP e HTTPS
Protocolos HTTP e HTTPSProtocolos HTTP e HTTPS
Protocolos HTTP e HTTPS
 
Http conceitos
Http   conceitosHttp   conceitos
Http conceitos
 
Como o HTTP/2 vai mudar sua vida
Como o HTTP/2 vai mudar sua vidaComo o HTTP/2 vai mudar sua vida
Como o HTTP/2 vai mudar sua vida
 
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
 
Redes 05 - aplicação
Redes   05 - aplicaçãoRedes   05 - aplicação
Redes 05 - aplicação
 
REST-fuuuu
REST-fuuuuREST-fuuuu
REST-fuuuu
 
Tunneling
TunnelingTunneling
Tunneling
 
Projeto Terminais Leves Linux
Projeto Terminais Leves LinuxProjeto Terminais Leves Linux
Projeto Terminais Leves Linux
 
Cookies
CookiesCookies
Cookies
 
Python MongoDB no MongoSP
Python MongoDB no MongoSPPython MongoDB no MongoSP
Python MongoDB no MongoSP
 
Protocolo Http
Protocolo HttpProtocolo Http
Protocolo Http
 
Protocolo http
Protocolo httpProtocolo http
Protocolo http
 
Introdução à Internet, Http e HTML
Introdução à Internet, Http e HTMLIntrodução à Internet, Http e HTML
Introdução à Internet, Http e HTML
 
Aula03 - protocolo http
Aula03 -  protocolo httpAula03 -  protocolo http
Aula03 - protocolo http
 

Viewers also liked

Metodologias de Programação IV - Aula 2, Secção 1 - Conceito de aplicação cli...
Metodologias de Programação IV - Aula 2, Secção 1 - Conceito de aplicação cli...Metodologias de Programação IV - Aula 2, Secção 1 - Conceito de aplicação cli...
Metodologias de Programação IV - Aula 2, Secção 1 - Conceito de aplicação cli...Leonel Morgado
 
Metodologias de Programação IV - Aula 4 (12/13), secção 1 - Funcionamento dos...
Metodologias de Programação IV - Aula 4 (12/13), secção 1 - Funcionamento dos...Metodologias de Programação IV - Aula 4 (12/13), secção 1 - Funcionamento dos...
Metodologias de Programação IV - Aula 4 (12/13), secção 1 - Funcionamento dos...Leonel Morgado
 
Metodologias de Programação IV - Aula 4, Secção 1 - Suporte para cache no pro...
Metodologias de Programação IV - Aula 4, Secção 1 - Suporte para cache no pro...Metodologias de Programação IV - Aula 4, Secção 1 - Suporte para cache no pro...
Metodologias de Programação IV - Aula 4, Secção 1 - Suporte para cache no pro...Leonel Morgado
 
Metodologias de Programação IV - Aula 4, Secção 2 - Suporte para sessões no p...
Metodologias de Programação IV - Aula 4, Secção 2 - Suporte para sessões no p...Metodologias de Programação IV - Aula 4, Secção 2 - Suporte para sessões no p...
Metodologias de Programação IV - Aula 4, Secção 2 - Suporte para sessões no p...Leonel Morgado
 
Metodologias de Programação IV - Aula 4 (12/13), secção 2 - Resolução de ende...
Metodologias de Programação IV - Aula 4 (12/13), secção 2 - Resolução de ende...Metodologias de Programação IV - Aula 4 (12/13), secção 2 - Resolução de ende...
Metodologias de Programação IV - Aula 4 (12/13), secção 2 - Resolução de ende...Leonel Morgado
 
Metodologias de Programação IV - Aula 2, Secção 3 - Terminologia do protocolo...
Metodologias de Programação IV - Aula 2, Secção 3 - Terminologia do protocolo...Metodologias de Programação IV - Aula 2, Secção 3 - Terminologia do protocolo...
Metodologias de Programação IV - Aula 2, Secção 3 - Terminologia do protocolo...Leonel Morgado
 

Viewers also liked (6)

Metodologias de Programação IV - Aula 2, Secção 1 - Conceito de aplicação cli...
Metodologias de Programação IV - Aula 2, Secção 1 - Conceito de aplicação cli...Metodologias de Programação IV - Aula 2, Secção 1 - Conceito de aplicação cli...
Metodologias de Programação IV - Aula 2, Secção 1 - Conceito de aplicação cli...
 
Metodologias de Programação IV - Aula 4 (12/13), secção 1 - Funcionamento dos...
Metodologias de Programação IV - Aula 4 (12/13), secção 1 - Funcionamento dos...Metodologias de Programação IV - Aula 4 (12/13), secção 1 - Funcionamento dos...
Metodologias de Programação IV - Aula 4 (12/13), secção 1 - Funcionamento dos...
 
Metodologias de Programação IV - Aula 4, Secção 1 - Suporte para cache no pro...
Metodologias de Programação IV - Aula 4, Secção 1 - Suporte para cache no pro...Metodologias de Programação IV - Aula 4, Secção 1 - Suporte para cache no pro...
Metodologias de Programação IV - Aula 4, Secção 1 - Suporte para cache no pro...
 
Metodologias de Programação IV - Aula 4, Secção 2 - Suporte para sessões no p...
Metodologias de Programação IV - Aula 4, Secção 2 - Suporte para sessões no p...Metodologias de Programação IV - Aula 4, Secção 2 - Suporte para sessões no p...
Metodologias de Programação IV - Aula 4, Secção 2 - Suporte para sessões no p...
 
Metodologias de Programação IV - Aula 4 (12/13), secção 2 - Resolução de ende...
Metodologias de Programação IV - Aula 4 (12/13), secção 2 - Resolução de ende...Metodologias de Programação IV - Aula 4 (12/13), secção 2 - Resolução de ende...
Metodologias de Programação IV - Aula 4 (12/13), secção 2 - Resolução de ende...
 
Metodologias de Programação IV - Aula 2, Secção 3 - Terminologia do protocolo...
Metodologias de Programação IV - Aula 2, Secção 3 - Terminologia do protocolo...Metodologias de Programação IV - Aula 2, Secção 3 - Terminologia do protocolo...
Metodologias de Programação IV - Aula 2, Secção 3 - Terminologia do protocolo...
 

Similar to Metodologias de Programação IV - Aula 3, Secção 1 - Cabeçalhos do protocolo HTTP

Escalabilidade e performance da infraestrutura Plone/Zope com CacheFU e Varnish
Escalabilidade e performance da infraestrutura Plone/Zope com CacheFU e VarnishEscalabilidade e performance da infraestrutura Plone/Zope com CacheFU e Varnish
Escalabilidade e performance da infraestrutura Plone/Zope com CacheFU e VarnishLucas Brasilino
 
02 - Fundamentos de Servlets
02 - Fundamentos de Servlets02 - Fundamentos de Servlets
02 - Fundamentos de ServletsMarcio Marinho
 
Aumente a performance de seu site de maneira disciplinada
Aumente a performance de seu site de maneira disciplinadaAumente a performance de seu site de maneira disciplinada
Aumente a performance de seu site de maneira disciplinadaHenrique Lima
 
Aumente a performance de seu site
Aumente a performance de seu siteAumente a performance de seu site
Aumente a performance de seu siteHenrique Lima
 
Introdução de web
Introdução de webIntrodução de web
Introdução de webSedu
 
De Web Services RESTful a Aplicações Mashup
De Web Services RESTful a Aplicações MashupDe Web Services RESTful a Aplicações Mashup
De Web Services RESTful a Aplicações MashupWagner Roberto dos Santos
 
pesquisas na internet
pesquisas na internetpesquisas na internet
pesquisas na interneta20061577
 
Tecnologia em Redes - Servidor WEB
Tecnologia em Redes - Servidor WEBTecnologia em Redes - Servidor WEB
Tecnologia em Redes - Servidor WEBelliando dias
 
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 APIComunidade NetPonto
 
Apostila Java Web (Servlets e JSPs)
Apostila Java Web (Servlets e JSPs)Apostila Java Web (Servlets e JSPs)
Apostila Java Web (Servlets e JSPs)Ricardo Terra
 
Curso de WebServlets (Java EE 7)
Curso de WebServlets (Java EE 7)Curso de WebServlets (Java EE 7)
Curso de WebServlets (Java EE 7)Helder da Rocha
 
Criando um Website Cacheavel
Criando um Website CacheavelCriando um Website Cacheavel
Criando um Website CacheavelLucas Brasilino
 
A Biblioteca cURL
A Biblioteca cURLA Biblioteca cURL
A Biblioteca cURLricardophp
 

Similar to Metodologias de Programação IV - Aula 3, Secção 1 - Cabeçalhos do protocolo HTTP (20)

Escalabilidade e performance da infraestrutura Plone/Zope com CacheFU e Varnish
Escalabilidade e performance da infraestrutura Plone/Zope com CacheFU e VarnishEscalabilidade e performance da infraestrutura Plone/Zope com CacheFU e Varnish
Escalabilidade e performance da infraestrutura Plone/Zope com CacheFU e Varnish
 
servlet-requisicoes
servlet-requisicoesservlet-requisicoes
servlet-requisicoes
 
02 - Fundamentos de Servlets
02 - Fundamentos de Servlets02 - Fundamentos de Servlets
02 - Fundamentos de Servlets
 
Aumente a performance de seu site de maneira disciplinada
Aumente a performance de seu site de maneira disciplinadaAumente a performance de seu site de maneira disciplinada
Aumente a performance de seu site de maneira disciplinada
 
Aumente a performance de seu site
Aumente a performance de seu siteAumente a performance de seu site
Aumente a performance de seu site
 
Introdução de web
Introdução de webIntrodução de web
Introdução de web
 
De Web Services RESTful a Aplicações Mashup
De Web Services RESTful a Aplicações MashupDe Web Services RESTful a Aplicações Mashup
De Web Services RESTful a Aplicações Mashup
 
Apache htaccess
Apache htaccessApache htaccess
Apache htaccess
 
pesquisas na internet
pesquisas na internetpesquisas na internet
pesquisas na internet
 
Dawi o protocolo-http
Dawi o protocolo-httpDawi o protocolo-http
Dawi o protocolo-http
 
Tecnologia em Redes - Servidor WEB
Tecnologia em Redes - Servidor WEBTecnologia em Redes - Servidor WEB
Tecnologia em Redes - Servidor WEB
 
Rest workshop
Rest workshopRest workshop
Rest workshop
 
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
 
Apostila Java Web (Servlets e JSPs)
Apostila Java Web (Servlets e JSPs)Apostila Java Web (Servlets e JSPs)
Apostila Java Web (Servlets e JSPs)
 
Curso de WebServlets (Java EE 7)
Curso de WebServlets (Java EE 7)Curso de WebServlets (Java EE 7)
Curso de WebServlets (Java EE 7)
 
A87c5f081429cf
A87c5f081429cfA87c5f081429cf
A87c5f081429cf
 
A Web é uma API
A Web é uma APIA Web é uma API
A Web é uma API
 
Criando um Website Cacheavel
Criando um Website CacheavelCriando um Website Cacheavel
Criando um Website Cacheavel
 
A Biblioteca cURL
A Biblioteca cURLA Biblioteca cURL
A Biblioteca cURL
 
o que é ajax
o que é ajaxo que é ajax
o que é ajax
 

More from Leonel Morgado

O Metaverso na Educação - Flash course SEaD-SPCE
O Metaverso na Educação - Flash course SEaD-SPCEO Metaverso na Educação - Flash course SEaD-SPCE
O Metaverso na Educação - Flash course SEaD-SPCELeonel Morgado
 
Aprendizagem Imersiva - PUC-PR - 2024-02-06
Aprendizagem Imersiva - PUC-PR - 2024-02-06Aprendizagem Imersiva - PUC-PR - 2024-02-06
Aprendizagem Imersiva - PUC-PR - 2024-02-06Leonel Morgado
 
Metaverso no Ensino Online - potencialidades e desafios
Metaverso no Ensino Online - potencialidades e desafiosMetaverso no Ensino Online - potencialidades e desafios
Metaverso no Ensino Online - potencialidades e desafiosLeonel Morgado
 
Realidade Virtual e Aumentada na Educação e Formação
Realidade Virtual e Aumentada na Educação e FormaçãoRealidade Virtual e Aumentada na Educação e Formação
Realidade Virtual e Aumentada na Educação e FormaçãoLeonel Morgado
 
Immersive Learning Environments
Immersive Learning EnvironmentsImmersive Learning Environments
Immersive Learning EnvironmentsLeonel Morgado
 
Abordagem e-Sim na Universidade Aberta: presença, narrativa e agência para am...
Abordagem e-Sim na Universidade Aberta: presença, narrativa e agência para am...Abordagem e-Sim na Universidade Aberta: presença, narrativa e agência para am...
Abordagem e-Sim na Universidade Aberta: presença, narrativa e agência para am...Leonel Morgado
 
Immersive Learning Environments
Immersive Learning EnvironmentsImmersive Learning Environments
Immersive Learning EnvironmentsLeonel Morgado
 
Growing the Knowledge Tree: Core concepts, methods, outcomes, and tools
Growing the Knowledge Tree: Core concepts, methods, outcomes, and toolsGrowing the Knowledge Tree: Core concepts, methods, outcomes, and tools
Growing the Knowledge Tree: Core concepts, methods, outcomes, and toolsLeonel Morgado
 
e-Sim approach at Universidade Aberta: presence, narrative and agency for imm...
e-Sim approach at Universidade Aberta: presence, narrative and agency for imm...e-Sim approach at Universidade Aberta: presence, narrative and agency for imm...
e-Sim approach at Universidade Aberta: presence, narrative and agency for imm...Leonel Morgado
 
Ambientes de Aprendizagem Imersivos
Ambientes de Aprendizagem ImersivosAmbientes de Aprendizagem Imersivos
Ambientes de Aprendizagem ImersivosLeonel Morgado
 
The Metaverse - what it was, is, and can be
The Metaverse - what it was, is, and can beThe Metaverse - what it was, is, and can be
The Metaverse - what it was, is, and can beLeonel Morgado
 
Recommendation Tool presentation - AR/VR systems for education and training
Recommendation Tool presentation - AR/VR systems for education and trainingRecommendation Tool presentation - AR/VR systems for education and training
Recommendation Tool presentation - AR/VR systems for education and trainingLeonel Morgado
 
Empowering humans in immersive learning environments
Empowering humans in immersive learning environmentsEmpowering humans in immersive learning environments
Empowering humans in immersive learning environmentsLeonel Morgado
 
Recommendation Tool for Use of Immersive Learning Environments
Recommendation Tool for Use of Immersive Learning EnvironmentsRecommendation Tool for Use of Immersive Learning Environments
Recommendation Tool for Use of Immersive Learning EnvironmentsLeonel Morgado
 
Aprender e comunicar complexidade online, com jogos e ambientes imersivos
Aprender e comunicar complexidade online, com jogos e ambientes imersivosAprender e comunicar complexidade online, com jogos e ambientes imersivos
Aprender e comunicar complexidade online, com jogos e ambientes imersivosLeonel Morgado
 
Metaverso - O que foi, é e pode ser
Metaverso - O que foi, é e pode serMetaverso - O que foi, é e pode ser
Metaverso - O que foi, é e pode serLeonel Morgado
 
Educational uses of immersive learning environments
Educational uses of immersive learning environmentsEducational uses of immersive learning environments
Educational uses of immersive learning environmentsLeonel Morgado
 
Serious Games & Immersive Technologies for Learning: possibilities & perspect...
Serious Games & Immersive Technologies for Learning: possibilities & perspect...Serious Games & Immersive Technologies for Learning: possibilities & perspect...
Serious Games & Immersive Technologies for Learning: possibilities & perspect...Leonel Morgado
 
Programação de computadores no pré-escolar: uma retrospetiva pessoal
Programação de computadores no pré-escolar: uma retrospetiva pessoalProgramação de computadores no pré-escolar: uma retrospetiva pessoal
Programação de computadores no pré-escolar: uma retrospetiva pessoalLeonel Morgado
 

More from Leonel Morgado (20)

O Metaverso na Educação - Flash course SEaD-SPCE
O Metaverso na Educação - Flash course SEaD-SPCEO Metaverso na Educação - Flash course SEaD-SPCE
O Metaverso na Educação - Flash course SEaD-SPCE
 
Aprendizagem Imersiva - PUC-PR - 2024-02-06
Aprendizagem Imersiva - PUC-PR - 2024-02-06Aprendizagem Imersiva - PUC-PR - 2024-02-06
Aprendizagem Imersiva - PUC-PR - 2024-02-06
 
Metaverso no Ensino Online - potencialidades e desafios
Metaverso no Ensino Online - potencialidades e desafiosMetaverso no Ensino Online - potencialidades e desafios
Metaverso no Ensino Online - potencialidades e desafios
 
Realidade Virtual e Aumentada na Educação e Formação
Realidade Virtual e Aumentada na Educação e FormaçãoRealidade Virtual e Aumentada na Educação e Formação
Realidade Virtual e Aumentada na Educação e Formação
 
Immersive Learning Environments
Immersive Learning EnvironmentsImmersive Learning Environments
Immersive Learning Environments
 
Aprendizagem imersiva
Aprendizagem imersivaAprendizagem imersiva
Aprendizagem imersiva
 
Abordagem e-Sim na Universidade Aberta: presença, narrativa e agência para am...
Abordagem e-Sim na Universidade Aberta: presença, narrativa e agência para am...Abordagem e-Sim na Universidade Aberta: presença, narrativa e agência para am...
Abordagem e-Sim na Universidade Aberta: presença, narrativa e agência para am...
 
Immersive Learning Environments
Immersive Learning EnvironmentsImmersive Learning Environments
Immersive Learning Environments
 
Growing the Knowledge Tree: Core concepts, methods, outcomes, and tools
Growing the Knowledge Tree: Core concepts, methods, outcomes, and toolsGrowing the Knowledge Tree: Core concepts, methods, outcomes, and tools
Growing the Knowledge Tree: Core concepts, methods, outcomes, and tools
 
e-Sim approach at Universidade Aberta: presence, narrative and agency for imm...
e-Sim approach at Universidade Aberta: presence, narrative and agency for imm...e-Sim approach at Universidade Aberta: presence, narrative and agency for imm...
e-Sim approach at Universidade Aberta: presence, narrative and agency for imm...
 
Ambientes de Aprendizagem Imersivos
Ambientes de Aprendizagem ImersivosAmbientes de Aprendizagem Imersivos
Ambientes de Aprendizagem Imersivos
 
The Metaverse - what it was, is, and can be
The Metaverse - what it was, is, and can beThe Metaverse - what it was, is, and can be
The Metaverse - what it was, is, and can be
 
Recommendation Tool presentation - AR/VR systems for education and training
Recommendation Tool presentation - AR/VR systems for education and trainingRecommendation Tool presentation - AR/VR systems for education and training
Recommendation Tool presentation - AR/VR systems for education and training
 
Empowering humans in immersive learning environments
Empowering humans in immersive learning environmentsEmpowering humans in immersive learning environments
Empowering humans in immersive learning environments
 
Recommendation Tool for Use of Immersive Learning Environments
Recommendation Tool for Use of Immersive Learning EnvironmentsRecommendation Tool for Use of Immersive Learning Environments
Recommendation Tool for Use of Immersive Learning Environments
 
Aprender e comunicar complexidade online, com jogos e ambientes imersivos
Aprender e comunicar complexidade online, com jogos e ambientes imersivosAprender e comunicar complexidade online, com jogos e ambientes imersivos
Aprender e comunicar complexidade online, com jogos e ambientes imersivos
 
Metaverso - O que foi, é e pode ser
Metaverso - O que foi, é e pode serMetaverso - O que foi, é e pode ser
Metaverso - O que foi, é e pode ser
 
Educational uses of immersive learning environments
Educational uses of immersive learning environmentsEducational uses of immersive learning environments
Educational uses of immersive learning environments
 
Serious Games & Immersive Technologies for Learning: possibilities & perspect...
Serious Games & Immersive Technologies for Learning: possibilities & perspect...Serious Games & Immersive Technologies for Learning: possibilities & perspect...
Serious Games & Immersive Technologies for Learning: possibilities & perspect...
 
Programação de computadores no pré-escolar: uma retrospetiva pessoal
Programação de computadores no pré-escolar: uma retrospetiva pessoalProgramação de computadores no pré-escolar: uma retrospetiva pessoal
Programação de computadores no pré-escolar: uma retrospetiva pessoal
 

Recently uploaded

apostila filosofia 1 ano 1s (1).pdf 1 ANO DO ENSINO MEDIO . CONCEITOSE CARAC...
apostila filosofia 1 ano  1s (1).pdf 1 ANO DO ENSINO MEDIO . CONCEITOSE CARAC...apostila filosofia 1 ano  1s (1).pdf 1 ANO DO ENSINO MEDIO . CONCEITOSE CARAC...
apostila filosofia 1 ano 1s (1).pdf 1 ANO DO ENSINO MEDIO . CONCEITOSE CARAC...SileideDaSilvaNascim
 
Sopa de letras | Dia da Europa 2024 (nível 1)
Sopa de letras | Dia da Europa 2024 (nível 1)Sopa de letras | Dia da Europa 2024 (nível 1)
Sopa de letras | Dia da Europa 2024 (nível 1)Centro Jacques Delors
 
Polígonos, Diagonais de um Polígono, SOMA DOS ANGULOS INTERNOS DE UM POLÍGON...
Polígonos, Diagonais de um Polígono, SOMA DOS ANGULOS INTERNOS DE UM  POLÍGON...Polígonos, Diagonais de um Polígono, SOMA DOS ANGULOS INTERNOS DE UM  POLÍGON...
Polígonos, Diagonais de um Polígono, SOMA DOS ANGULOS INTERNOS DE UM POLÍGON...marcelafinkler
 
O desenvolvimento é um conceito mais amplo, pode ter um contexto biológico ou...
O desenvolvimento é um conceito mais amplo, pode ter um contexto biológico ou...O desenvolvimento é um conceito mais amplo, pode ter um contexto biológico ou...
O desenvolvimento é um conceito mais amplo, pode ter um contexto biológico ou...azulassessoria9
 
Considerando as pesquisas de Gallahue, Ozmun e Goodway (2013) os bebês até an...
Considerando as pesquisas de Gallahue, Ozmun e Goodway (2013) os bebês até an...Considerando as pesquisas de Gallahue, Ozmun e Goodway (2013) os bebês até an...
Considerando as pesquisas de Gallahue, Ozmun e Goodway (2013) os bebês até an...azulassessoria9
 
INTERTEXTUALIDADE atividade muito boa para
INTERTEXTUALIDADE   atividade muito boa paraINTERTEXTUALIDADE   atividade muito boa para
INTERTEXTUALIDADE atividade muito boa paraAndreaPassosMascaren
 
Quiz | Dia da Europa 2024 (comemoração)
Quiz | Dia da Europa 2024  (comemoração)Quiz | Dia da Europa 2024  (comemoração)
Quiz | Dia da Europa 2024 (comemoração)Centro Jacques Delors
 
Slides Lição 6, Betel, Ordenança para uma vida de obediência e submissão.pptx
Slides Lição 6, Betel, Ordenança para uma vida de obediência e submissão.pptxSlides Lição 6, Betel, Ordenança para uma vida de obediência e submissão.pptx
Slides Lição 6, Betel, Ordenança para uma vida de obediência e submissão.pptxLuizHenriquedeAlmeid6
 
Educação Financeira - Cartão de crédito665933.pptx
Educação Financeira - Cartão de crédito665933.pptxEducação Financeira - Cartão de crédito665933.pptx
Educação Financeira - Cartão de crédito665933.pptxMarcosLemes28
 
Apresentação | Dia da Europa 2024 - Celebremos a União Europeia!
Apresentação | Dia da Europa 2024 - Celebremos a União Europeia!Apresentação | Dia da Europa 2024 - Celebremos a União Europeia!
Apresentação | Dia da Europa 2024 - Celebremos a União Europeia!Centro Jacques Delors
 
6ano variação linguística ensino fundamental.pptx
6ano variação linguística ensino fundamental.pptx6ano variação linguística ensino fundamental.pptx
6ano variação linguística ensino fundamental.pptxJssicaCassiano2
 
A EDUCAÇÃO FÍSICA NO NOVO ENSINO MÉDIO: IMPLICAÇÕES E TENDÊNCIAS PROMOVIDAS P...
A EDUCAÇÃO FÍSICA NO NOVO ENSINO MÉDIO: IMPLICAÇÕES E TENDÊNCIAS PROMOVIDAS P...A EDUCAÇÃO FÍSICA NO NOVO ENSINO MÉDIO: IMPLICAÇÕES E TENDÊNCIAS PROMOVIDAS P...
A EDUCAÇÃO FÍSICA NO NOVO ENSINO MÉDIO: IMPLICAÇÕES E TENDÊNCIAS PROMOVIDAS P...PatriciaCaetano18
 
Tema de redação - As dificuldades para barrar o casamento infantil no Brasil ...
Tema de redação - As dificuldades para barrar o casamento infantil no Brasil ...Tema de redação - As dificuldades para barrar o casamento infantil no Brasil ...
Tema de redação - As dificuldades para barrar o casamento infantil no Brasil ...AnaAugustaLagesZuqui
 
tensoes-etnicas-na-europa-template-1.pptx
tensoes-etnicas-na-europa-template-1.pptxtensoes-etnicas-na-europa-template-1.pptx
tensoes-etnicas-na-europa-template-1.pptxgia0123
 
Introdução às Funções 9º ano: Diagrama de flexas, Valor numérico de uma funçã...
Introdução às Funções 9º ano: Diagrama de flexas, Valor numérico de uma funçã...Introdução às Funções 9º ano: Diagrama de flexas, Valor numérico de uma funçã...
Introdução às Funções 9º ano: Diagrama de flexas, Valor numérico de uma funçã...marcelafinkler
 
Acessibilidade, inclusão e valorização da diversidade
Acessibilidade, inclusão e valorização da diversidadeAcessibilidade, inclusão e valorização da diversidade
Acessibilidade, inclusão e valorização da diversidadeLEONIDES PEREIRA DE SOUZA
 
República Velha (República da Espada e Oligárquica)-Sala de Aula.pdf
República Velha (República da Espada e Oligárquica)-Sala de Aula.pdfRepública Velha (República da Espada e Oligárquica)-Sala de Aula.pdf
República Velha (República da Espada e Oligárquica)-Sala de Aula.pdfLidianeLill2
 
Historia de Portugal - Quarto Ano - 2024
Historia de Portugal - Quarto Ano - 2024Historia de Portugal - Quarto Ano - 2024
Historia de Portugal - Quarto Ano - 2024Cabiamar
 
Caderno de exercícios Revisão para o ENEM (1).pdf
Caderno de exercícios Revisão para o ENEM (1).pdfCaderno de exercícios Revisão para o ENEM (1).pdf
Caderno de exercícios Revisão para o ENEM (1).pdfJuliana Barbosa
 
ATIVIDADE 2 - DESENVOLVIMENTO E APRENDIZAGEM MOTORA - 52_2024
ATIVIDADE 2 - DESENVOLVIMENTO E APRENDIZAGEM MOTORA - 52_2024ATIVIDADE 2 - DESENVOLVIMENTO E APRENDIZAGEM MOTORA - 52_2024
ATIVIDADE 2 - DESENVOLVIMENTO E APRENDIZAGEM MOTORA - 52_2024azulassessoria9
 

Recently uploaded (20)

apostila filosofia 1 ano 1s (1).pdf 1 ANO DO ENSINO MEDIO . CONCEITOSE CARAC...
apostila filosofia 1 ano  1s (1).pdf 1 ANO DO ENSINO MEDIO . CONCEITOSE CARAC...apostila filosofia 1 ano  1s (1).pdf 1 ANO DO ENSINO MEDIO . CONCEITOSE CARAC...
apostila filosofia 1 ano 1s (1).pdf 1 ANO DO ENSINO MEDIO . CONCEITOSE CARAC...
 
Sopa de letras | Dia da Europa 2024 (nível 1)
Sopa de letras | Dia da Europa 2024 (nível 1)Sopa de letras | Dia da Europa 2024 (nível 1)
Sopa de letras | Dia da Europa 2024 (nível 1)
 
Polígonos, Diagonais de um Polígono, SOMA DOS ANGULOS INTERNOS DE UM POLÍGON...
Polígonos, Diagonais de um Polígono, SOMA DOS ANGULOS INTERNOS DE UM  POLÍGON...Polígonos, Diagonais de um Polígono, SOMA DOS ANGULOS INTERNOS DE UM  POLÍGON...
Polígonos, Diagonais de um Polígono, SOMA DOS ANGULOS INTERNOS DE UM POLÍGON...
 
O desenvolvimento é um conceito mais amplo, pode ter um contexto biológico ou...
O desenvolvimento é um conceito mais amplo, pode ter um contexto biológico ou...O desenvolvimento é um conceito mais amplo, pode ter um contexto biológico ou...
O desenvolvimento é um conceito mais amplo, pode ter um contexto biológico ou...
 
Considerando as pesquisas de Gallahue, Ozmun e Goodway (2013) os bebês até an...
Considerando as pesquisas de Gallahue, Ozmun e Goodway (2013) os bebês até an...Considerando as pesquisas de Gallahue, Ozmun e Goodway (2013) os bebês até an...
Considerando as pesquisas de Gallahue, Ozmun e Goodway (2013) os bebês até an...
 
INTERTEXTUALIDADE atividade muito boa para
INTERTEXTUALIDADE   atividade muito boa paraINTERTEXTUALIDADE   atividade muito boa para
INTERTEXTUALIDADE atividade muito boa para
 
Quiz | Dia da Europa 2024 (comemoração)
Quiz | Dia da Europa 2024  (comemoração)Quiz | Dia da Europa 2024  (comemoração)
Quiz | Dia da Europa 2024 (comemoração)
 
Slides Lição 6, Betel, Ordenança para uma vida de obediência e submissão.pptx
Slides Lição 6, Betel, Ordenança para uma vida de obediência e submissão.pptxSlides Lição 6, Betel, Ordenança para uma vida de obediência e submissão.pptx
Slides Lição 6, Betel, Ordenança para uma vida de obediência e submissão.pptx
 
Educação Financeira - Cartão de crédito665933.pptx
Educação Financeira - Cartão de crédito665933.pptxEducação Financeira - Cartão de crédito665933.pptx
Educação Financeira - Cartão de crédito665933.pptx
 
Apresentação | Dia da Europa 2024 - Celebremos a União Europeia!
Apresentação | Dia da Europa 2024 - Celebremos a União Europeia!Apresentação | Dia da Europa 2024 - Celebremos a União Europeia!
Apresentação | Dia da Europa 2024 - Celebremos a União Europeia!
 
6ano variação linguística ensino fundamental.pptx
6ano variação linguística ensino fundamental.pptx6ano variação linguística ensino fundamental.pptx
6ano variação linguística ensino fundamental.pptx
 
A EDUCAÇÃO FÍSICA NO NOVO ENSINO MÉDIO: IMPLICAÇÕES E TENDÊNCIAS PROMOVIDAS P...
A EDUCAÇÃO FÍSICA NO NOVO ENSINO MÉDIO: IMPLICAÇÕES E TENDÊNCIAS PROMOVIDAS P...A EDUCAÇÃO FÍSICA NO NOVO ENSINO MÉDIO: IMPLICAÇÕES E TENDÊNCIAS PROMOVIDAS P...
A EDUCAÇÃO FÍSICA NO NOVO ENSINO MÉDIO: IMPLICAÇÕES E TENDÊNCIAS PROMOVIDAS P...
 
Tema de redação - As dificuldades para barrar o casamento infantil no Brasil ...
Tema de redação - As dificuldades para barrar o casamento infantil no Brasil ...Tema de redação - As dificuldades para barrar o casamento infantil no Brasil ...
Tema de redação - As dificuldades para barrar o casamento infantil no Brasil ...
 
tensoes-etnicas-na-europa-template-1.pptx
tensoes-etnicas-na-europa-template-1.pptxtensoes-etnicas-na-europa-template-1.pptx
tensoes-etnicas-na-europa-template-1.pptx
 
Introdução às Funções 9º ano: Diagrama de flexas, Valor numérico de uma funçã...
Introdução às Funções 9º ano: Diagrama de flexas, Valor numérico de uma funçã...Introdução às Funções 9º ano: Diagrama de flexas, Valor numérico de uma funçã...
Introdução às Funções 9º ano: Diagrama de flexas, Valor numérico de uma funçã...
 
Acessibilidade, inclusão e valorização da diversidade
Acessibilidade, inclusão e valorização da diversidadeAcessibilidade, inclusão e valorização da diversidade
Acessibilidade, inclusão e valorização da diversidade
 
República Velha (República da Espada e Oligárquica)-Sala de Aula.pdf
República Velha (República da Espada e Oligárquica)-Sala de Aula.pdfRepública Velha (República da Espada e Oligárquica)-Sala de Aula.pdf
República Velha (República da Espada e Oligárquica)-Sala de Aula.pdf
 
Historia de Portugal - Quarto Ano - 2024
Historia de Portugal - Quarto Ano - 2024Historia de Portugal - Quarto Ano - 2024
Historia de Portugal - Quarto Ano - 2024
 
Caderno de exercícios Revisão para o ENEM (1).pdf
Caderno de exercícios Revisão para o ENEM (1).pdfCaderno de exercícios Revisão para o ENEM (1).pdf
Caderno de exercícios Revisão para o ENEM (1).pdf
 
ATIVIDADE 2 - DESENVOLVIMENTO E APRENDIZAGEM MOTORA - 52_2024
ATIVIDADE 2 - DESENVOLVIMENTO E APRENDIZAGEM MOTORA - 52_2024ATIVIDADE 2 - DESENVOLVIMENTO E APRENDIZAGEM MOTORA - 52_2024
ATIVIDADE 2 - DESENVOLVIMENTO E APRENDIZAGEM MOTORA - 52_2024
 

Metodologias de Programação IV - Aula 3, Secção 1 - Cabeçalhos do protocolo HTTP

  • 1. Cabeçalhos do protocolo HTTP 2011-2012 Metodologias de Programação IV
  • 2. Mensagem dopedido HTTP (Porto 80 de TCP) Cliente HTTP (por ex.,o navegador) Servidor HTTP(Apache, IIS, etc.) Mensagem daresposta HTTP
  • 3. Mensagens do HTTP Pedido Linha de pedido CRLF Linhas de cabeçalhos CRLF CRLF Corpo Resposta Linha de estado CRLF Linhas de cabeçalhos CRLF CRLF Corpo
  • 4. Pedido HTTP GET /tc/home.html HTTP/1.1 Host: www.tribunalconstitucional.pt ...
  • 5. Resposta HTTP HTTP/1.1 200 OK Content-Type: text/html Content-Length: 9934 ...
  • 6.
  • 7.
  • 8.
  • 9. Lista total de cabeçalhos: Vamos ver alguns exemplos HypertextTransferProtocol -- HTTP/1.1 http://www.w3.org/Protocols/rfc2616/rfc2616.html
  • 10. GET /tc/home.html HTTP/1.1 Host: www.tribunalconstitucional.pt Date: Tue, 30 Sep 2008 13:45:29 GMT User-Agent: Mozilla/5.0 (Windows; U; Windows NT 6.0; en-US; rv:1.9.0.3) Gecko/2008092417 Firefox/3.0.3 Referer: http://home.utad.pt/~leonelm/teste.htm If-Modified-Since: Tue, 30 Sep 2008 13:40:29 GMT
  • 11. GET /tc/home.html HTTP/1.1 Host: www.tribunalconstitucional.pt Date: Tue, 30 Sep 2008 13:45:29 GMT User-Agent: Mozilla/5.0 (Windows; U; Windows NT 6.0; en-US; rv:1.9.0.3) Gecko/2008092417 Firefox/3.0.3 Referer: http://home.utad.pt/~leonelm/teste.htm If-Modified-Since: Tue, 30 Sep 2008 13:40:29 GMT
  • 12. GET /tc/home.html HTTP/1.1 Host: www.tribunalconstitucional.pt Date: Tue, 30 Sep 2008 13:45:29 GMT User-Agent: Mozilla/5.0 (Windows; U; Windows NT 6.0; en-US; rv:1.9.0.3) Gecko/2008092417 Firefox/3.0.3 Referer: http://home.utad.pt/~leonelm/teste.htm If-Modified-Since: Tue, 30 Sep 2008 13:40:29 GMT
  • 13. GET /tc/home.html HTTP/1.1 Host: www.tribunalconstitucional.pt Date: Tue, 30 Sep 2008 13:45:29 GMT User-Agent: Mozilla/5.0 (Windows; U; Windows NT 6.0; en-US; rv:1.9.0.3) Gecko/2008092417 Firefox/3.0.3 Referer: http://home.utad.pt/~leonelm/teste.htm If-Modified-Since: Tue, 30 Sep 2008 13:40:29 GMT
  • 14. GET /tc/home.html HTTP/1.1 Host: www.tribunalconstitucional.pt Date: Tue, 30 Sep 2008 13:45:29 GMT User-Agent: Mozilla/5.0 (Windows; U; Windows NT 6.0; en-US; rv:1.9.0.3) Gecko/2008092417 Firefox/3.0.3 Referer: http://home.utad.pt/~leonelm/teste.htm If-Modified-Since: Tue, 30 Sep 2008 13:40:29 GMT
  • 15. HTTP/1.1 200 OK Server: Microsoft-IIS/4.0 Date: Tue, 30 Sep 2008 13:45:38 GMT Content-Type: text/html Accept-Ranges: bytes Last-Modified: Wed, 06 Jan 1999 18:56:06 GMT Content-Length: 9934
  • 16. HTTP/1.1 200 OK Server: Microsoft-IIS/4.0 Date: Tue, 30 Sep 2008 13:45:38 GMT Content-Type: text/html Accept-Ranges: bytes Last-Modified: Wed, 06 Jan 1999 18:56:06 GMT Content-Length: 9934
  • 17. HTTP/1.1 200 OK Server: Microsoft-IIS/4.0 Date: Tue, 30 Sep 2008 13:45:38 GMT Content-Type: text/html Accept-Ranges: bytes Last-Modified: Wed, 06 Jan 1999 18:56:06 GMT Content-Length: 9934
  • 18. HTTP/1.1 200 OK Server: Microsoft-IIS/4.0 Date: Tue, 30 Sep 2008 13:45:38 GMT Content-Type: text/html Accept-Ranges: bytes Last-Modified: Wed, 06 Jan 1999 18:56:06 GMT Content-Length: 9934
  • 19. HTTP/1.1 200 OK Server: Microsoft-IIS/4.0 Date: Tue, 30 Sep 2008 13:45:38 GMT Content-Type: text/html Accept-Ranges: bytes Last-Modified: Wed, 06 Jan 1999 18:56:06 GMT Content-Length: 9934
  • 20. HTTP/1.1 200 OK Server: Microsoft-IIS/4.0 Date: Tue, 30 Sep 2008 13:45:38 GMT Content-Type: text/html Accept-Ranges: bytes Last-Modified: Wed, 06 Jan 1999 18:56:06 GMT Content-Length: 9934
  • 21. Quem define (mete) os cabeçalhos dos pedidos? Quem define (mete) os cabeçalhos das respostas de conteúdo estático? Quem define (mete) os cabeçalhos das respostas de conteúdo dinâmico?
  • 22. function ajax(url, vars, callbackFunction) { var request = new XMLHttpRequest(); request.open("POST", url, true); request.setRequestHeader( "Content-Type", "application/x-www-form-urlencoded"); request.onreadystatechange = function() { if (request.readyState == 4 && request.status == 200) { if (request.responseText) { callbackFunction(request.responseText); } } }; request.send(vars); } No navegador (pedido)
  • 23. function ajax(url, vars, callbackFunction) { var request = new XMLHttpRequest(); request.open("POST", url, true); request.setRequestHeader( "Content-Type", "application/x-www-form-urlencoded"); request.onreadystatechange = function() { if (request.readyState == 4 && request.status == 200) { if (request.responseText) { callbackFunction(request.responseText); } } }; request.send(vars); } No browser (pedido)
  • 24. <% Response.AddHeader "CustomHeader", "CustomValue" %> <HTML> <TITLE>Teste</TITLE> <BODY><p>Esta p&aacute;gina tem um cabe&ccedil;alho HTTP personalizado</p> </BODY> </HTML> No servidor (resposta)
  • 25. <% Response.AddHeader "CustomHeader", "CustomValue" %> <HTML> <TITLE>Teste</TITLE> <BODY><p>Esta p&aacute;gina tem um cabe&ccedil;alho HTTP personalizado</p> </BODY> </HTML> No servidor (resposta)
  • 26. <HTML> <TITLE>Teste</TITLE> <BODY><p>Esta p&aacute;gina tem um cabe&ccedil;alho HTTP personalizado</p> <% Response.AddHeader "CustomHeader", "CustomValue" %> </BODY> </HTML> Isto pode funcionar?
  • 27. Navegador pede a página Servidor cria a resposta, excepto corpo Servidor vai lendo o ficheiro da página Servidor copia o conteúdo do ficheiro para o corpo <% %> ? Não Sim Servidor vai enviando o corpo da página Servidor executa o código e cria mais corpo
  • 28. Quando chega ao código, já se acabaram os cabeçalhos e já começou a ser enviado o corpo da resposta... <HTML> <TITLE>Teste</TITLE> <BODY><p>Esta p&aacute;gina tem um cabe&ccedil;alho HTTP personalizado</p> <% Response.AddHeader "CustomHeader", "CustomValue" %> </BODY> </HTML>
  • 29. Mas há servidores que implementam buffering da resposta: Browser pede a página Servidor vai criando a resposta em memória intermédia (buffer) Servidor cria a resposta, excepto corpo Servidor vai lendo o ficheiro da página Servidor copia o conteúdo do ficheiro para o corpo <% %> ? Não Sim Servidor executa o código e cria mais corpo
  • 30. Mas há servidores que implementam buffering da resposta: Browser pede a página Servidor vai criando a resposta em memória intermédia (buffer) até chegar ao fim do corpo Servidor cria a resposta, excepto corpo Servidor vai lendo o ficheiro da página Servidor copia o conteúdo do ficheiro para o corpo <% %> ? Não Sim Servidor executa o código e cria mais corpo Servidor envia o conteúdo do buffer <% Response.Flush() %>
  • 31. Com buffering activo no servidor (default no IIS 5.0 e mais recentes), isto funciona <HTML> <TITLE>Teste</TITLE> <BODY><p>Esta p&aacute;gina tem um cabe&ccedil;alho HTTP personalizado</p> <% Response.AddHeader "CustomHeader", "CustomValue" %> </BODY> </HTML>
  • 32. Leituras associadas Web ApplicationArchitecture, Second Edition Cap. 3: “Birth of theWeb: HTTP”, págs. 44 a 60. HypertextTransferProtocol -- HTTP/1.1 http://www.w3.org/Protocols/rfc2616/rfc2616.html
  • 33. Tipos mime no protocolo http Próxima secção