SlideShare uma empresa Scribd logo
1 de 33
Baixar para ler 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

Mais conteúdo relacionado

Mais procurados

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
 

Mais procurados (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
 

Destaque

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
 

Destaque (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...
 

Semelhante a HTTP Headers Doc

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
Aumente a performance de seu siteAumente a performance de seu site
Aumente a performance de seu siteHenrique Lima
 
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
 
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
 

Semelhante a HTTP Headers Doc (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
Aumente a performance de seu siteAumente a performance de seu site
Aumente a performance de seu site
 
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
 
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
 

Mais de 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
 

Mais de 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
 

Último

Grupo Tribalhista - Música Velha Infância (cruzadinha e caça palavras)
Grupo Tribalhista - Música Velha Infância (cruzadinha e caça palavras)Grupo Tribalhista - Música Velha Infância (cruzadinha e caça palavras)
Grupo Tribalhista - Música Velha Infância (cruzadinha e caça palavras)Mary Alvarenga
 
ALMANANHE DE BRINCADEIRAS - 500 atividades escolares
ALMANANHE DE BRINCADEIRAS - 500 atividades escolaresALMANANHE DE BRINCADEIRAS - 500 atividades escolares
ALMANANHE DE BRINCADEIRAS - 500 atividades escolaresLilianPiola
 
Bullying - Atividade com caça- palavras
Bullying   - Atividade com  caça- palavrasBullying   - Atividade com  caça- palavras
Bullying - Atividade com caça- palavrasMary Alvarenga
 
Apostila da CONQUISTA_ para o 6ANO_LP_UNI1.pptx
Apostila da CONQUISTA_ para o 6ANO_LP_UNI1.pptxApostila da CONQUISTA_ para o 6ANO_LP_UNI1.pptx
Apostila da CONQUISTA_ para o 6ANO_LP_UNI1.pptxIsabelaRafael2
 
A Arte de Escrever Poemas - Dia das Mães
A Arte de Escrever Poemas - Dia das MãesA Arte de Escrever Poemas - Dia das Mães
A Arte de Escrever Poemas - Dia das MãesMary Alvarenga
 
Governo Provisório Era Vargas 1930-1934 Brasil
Governo Provisório Era Vargas 1930-1934 BrasilGoverno Provisório Era Vargas 1930-1934 Brasil
Governo Provisório Era Vargas 1930-1934 Brasillucasp132400
 
Habilidades Motoras Básicas e Específicas
Habilidades Motoras Básicas e EspecíficasHabilidades Motoras Básicas e Específicas
Habilidades Motoras Básicas e EspecíficasCassio Meira Jr.
 
Slides Lição 5, CPAD, Os Inimigos do Cristão, 2Tr24, Pr Henrique.pptx
Slides Lição 5, CPAD, Os Inimigos do Cristão, 2Tr24, Pr Henrique.pptxSlides Lição 5, CPAD, Os Inimigos do Cristão, 2Tr24, Pr Henrique.pptx
Slides Lição 5, CPAD, Os Inimigos do Cristão, 2Tr24, Pr Henrique.pptxLuizHenriquedeAlmeid6
 
Slides Lição 03, Central Gospel, O Arrebatamento, 1Tr24.pptx
Slides Lição 03, Central Gospel, O Arrebatamento, 1Tr24.pptxSlides Lição 03, Central Gospel, O Arrebatamento, 1Tr24.pptx
Slides Lição 03, Central Gospel, O Arrebatamento, 1Tr24.pptxLuizHenriquedeAlmeid6
 
“Sobrou pra mim” - Conto de Ruth Rocha.pptx
“Sobrou pra mim” - Conto de Ruth Rocha.pptx“Sobrou pra mim” - Conto de Ruth Rocha.pptx
“Sobrou pra mim” - Conto de Ruth Rocha.pptxthaisamaral9365923
 
trabalho wanda rocha ditadura
trabalho wanda rocha ditaduratrabalho wanda rocha ditadura
trabalho wanda rocha ditaduraAdryan Luiz
 
Aula - 1º Ano - Émile Durkheim - Um dos clássicos da sociologia
Aula - 1º Ano - Émile Durkheim - Um dos clássicos da sociologiaAula - 1º Ano - Émile Durkheim - Um dos clássicos da sociologia
Aula - 1º Ano - Émile Durkheim - Um dos clássicos da sociologiaaulasgege
 
QUARTA - 1EM SOCIOLOGIA - Aprender a pesquisar.pptx
QUARTA - 1EM SOCIOLOGIA - Aprender a pesquisar.pptxQUARTA - 1EM SOCIOLOGIA - Aprender a pesquisar.pptx
QUARTA - 1EM SOCIOLOGIA - Aprender a pesquisar.pptxIsabellaGomes58
 
Época Realista y la obra de Madame Bovary.
Época Realista y la obra de Madame Bovary.Época Realista y la obra de Madame Bovary.
Época Realista y la obra de Madame Bovary.keislayyovera123
 
Slides Lição 4, Betel, Ordenança quanto à contribuição financeira, 2Tr24.pptx
Slides Lição 4, Betel, Ordenança quanto à contribuição financeira, 2Tr24.pptxSlides Lição 4, Betel, Ordenança quanto à contribuição financeira, 2Tr24.pptx
Slides Lição 4, Betel, Ordenança quanto à contribuição financeira, 2Tr24.pptxLuizHenriquedeAlmeid6
 
E agora?! Já não avalio as atitudes e valores?
E agora?! Já não avalio as atitudes e valores?E agora?! Já não avalio as atitudes e valores?
E agora?! Já não avalio as atitudes e valores?Rosalina Simão Nunes
 
Família de palavras.ppt com exemplos e exercícios interativos.
Família de palavras.ppt com exemplos e exercícios interativos.Família de palavras.ppt com exemplos e exercícios interativos.
Família de palavras.ppt com exemplos e exercícios interativos.Susana Stoffel
 
COMPETÊNCIA 1 DA REDAÇÃO DO ENEM - REDAÇÃO ENEM
COMPETÊNCIA 1 DA REDAÇÃO DO ENEM - REDAÇÃO ENEMCOMPETÊNCIA 1 DA REDAÇÃO DO ENEM - REDAÇÃO ENEM
COMPETÊNCIA 1 DA REDAÇÃO DO ENEM - REDAÇÃO ENEMVanessaCavalcante37
 
Simulado 1 Etapa - 2024 Proximo Passo.pdf
Simulado 1 Etapa - 2024 Proximo Passo.pdfSimulado 1 Etapa - 2024 Proximo Passo.pdf
Simulado 1 Etapa - 2024 Proximo Passo.pdfEditoraEnovus
 
William J. Bennett - O livro das virtudes para Crianças.pdf
William J. Bennett - O livro das virtudes para Crianças.pdfWilliam J. Bennett - O livro das virtudes para Crianças.pdf
William J. Bennett - O livro das virtudes para Crianças.pdfAdrianaCunha84
 

Último (20)

Grupo Tribalhista - Música Velha Infância (cruzadinha e caça palavras)
Grupo Tribalhista - Música Velha Infância (cruzadinha e caça palavras)Grupo Tribalhista - Música Velha Infância (cruzadinha e caça palavras)
Grupo Tribalhista - Música Velha Infância (cruzadinha e caça palavras)
 
ALMANANHE DE BRINCADEIRAS - 500 atividades escolares
ALMANANHE DE BRINCADEIRAS - 500 atividades escolaresALMANANHE DE BRINCADEIRAS - 500 atividades escolares
ALMANANHE DE BRINCADEIRAS - 500 atividades escolares
 
Bullying - Atividade com caça- palavras
Bullying   - Atividade com  caça- palavrasBullying   - Atividade com  caça- palavras
Bullying - Atividade com caça- palavras
 
Apostila da CONQUISTA_ para o 6ANO_LP_UNI1.pptx
Apostila da CONQUISTA_ para o 6ANO_LP_UNI1.pptxApostila da CONQUISTA_ para o 6ANO_LP_UNI1.pptx
Apostila da CONQUISTA_ para o 6ANO_LP_UNI1.pptx
 
A Arte de Escrever Poemas - Dia das Mães
A Arte de Escrever Poemas - Dia das MãesA Arte de Escrever Poemas - Dia das Mães
A Arte de Escrever Poemas - Dia das Mães
 
Governo Provisório Era Vargas 1930-1934 Brasil
Governo Provisório Era Vargas 1930-1934 BrasilGoverno Provisório Era Vargas 1930-1934 Brasil
Governo Provisório Era Vargas 1930-1934 Brasil
 
Habilidades Motoras Básicas e Específicas
Habilidades Motoras Básicas e EspecíficasHabilidades Motoras Básicas e Específicas
Habilidades Motoras Básicas e Específicas
 
Slides Lição 5, CPAD, Os Inimigos do Cristão, 2Tr24, Pr Henrique.pptx
Slides Lição 5, CPAD, Os Inimigos do Cristão, 2Tr24, Pr Henrique.pptxSlides Lição 5, CPAD, Os Inimigos do Cristão, 2Tr24, Pr Henrique.pptx
Slides Lição 5, CPAD, Os Inimigos do Cristão, 2Tr24, Pr Henrique.pptx
 
Slides Lição 03, Central Gospel, O Arrebatamento, 1Tr24.pptx
Slides Lição 03, Central Gospel, O Arrebatamento, 1Tr24.pptxSlides Lição 03, Central Gospel, O Arrebatamento, 1Tr24.pptx
Slides Lição 03, Central Gospel, O Arrebatamento, 1Tr24.pptx
 
“Sobrou pra mim” - Conto de Ruth Rocha.pptx
“Sobrou pra mim” - Conto de Ruth Rocha.pptx“Sobrou pra mim” - Conto de Ruth Rocha.pptx
“Sobrou pra mim” - Conto de Ruth Rocha.pptx
 
trabalho wanda rocha ditadura
trabalho wanda rocha ditaduratrabalho wanda rocha ditadura
trabalho wanda rocha ditadura
 
Aula - 1º Ano - Émile Durkheim - Um dos clássicos da sociologia
Aula - 1º Ano - Émile Durkheim - Um dos clássicos da sociologiaAula - 1º Ano - Émile Durkheim - Um dos clássicos da sociologia
Aula - 1º Ano - Émile Durkheim - Um dos clássicos da sociologia
 
QUARTA - 1EM SOCIOLOGIA - Aprender a pesquisar.pptx
QUARTA - 1EM SOCIOLOGIA - Aprender a pesquisar.pptxQUARTA - 1EM SOCIOLOGIA - Aprender a pesquisar.pptx
QUARTA - 1EM SOCIOLOGIA - Aprender a pesquisar.pptx
 
Época Realista y la obra de Madame Bovary.
Época Realista y la obra de Madame Bovary.Época Realista y la obra de Madame Bovary.
Época Realista y la obra de Madame Bovary.
 
Slides Lição 4, Betel, Ordenança quanto à contribuição financeira, 2Tr24.pptx
Slides Lição 4, Betel, Ordenança quanto à contribuição financeira, 2Tr24.pptxSlides Lição 4, Betel, Ordenança quanto à contribuição financeira, 2Tr24.pptx
Slides Lição 4, Betel, Ordenança quanto à contribuição financeira, 2Tr24.pptx
 
E agora?! Já não avalio as atitudes e valores?
E agora?! Já não avalio as atitudes e valores?E agora?! Já não avalio as atitudes e valores?
E agora?! Já não avalio as atitudes e valores?
 
Família de palavras.ppt com exemplos e exercícios interativos.
Família de palavras.ppt com exemplos e exercícios interativos.Família de palavras.ppt com exemplos e exercícios interativos.
Família de palavras.ppt com exemplos e exercícios interativos.
 
COMPETÊNCIA 1 DA REDAÇÃO DO ENEM - REDAÇÃO ENEM
COMPETÊNCIA 1 DA REDAÇÃO DO ENEM - REDAÇÃO ENEMCOMPETÊNCIA 1 DA REDAÇÃO DO ENEM - REDAÇÃO ENEM
COMPETÊNCIA 1 DA REDAÇÃO DO ENEM - REDAÇÃO ENEM
 
Simulado 1 Etapa - 2024 Proximo Passo.pdf
Simulado 1 Etapa - 2024 Proximo Passo.pdfSimulado 1 Etapa - 2024 Proximo Passo.pdf
Simulado 1 Etapa - 2024 Proximo Passo.pdf
 
William J. Bennett - O livro das virtudes para Crianças.pdf
William J. Bennett - O livro das virtudes para Crianças.pdfWilliam J. Bennett - O livro das virtudes para Crianças.pdf
William J. Bennett - O livro das virtudes para Crianças.pdf
 

HTTP Headers Doc

  • 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