52
Tecnologias da Internet Ano Lectivo 2012/2013 * 2º Semestre Licenciaturas em Engenharia Informática (5378) Tecnologias e Sistemas da Informação (6625) Aula 3, 8/3/2013 UNIVERSIDADE DA BEIRA INTERIOR Faculdade de Engenharia Departamento de Informática Nuno M. Garcia, [email protected]

Tecnologias da Internet - UBIngarcia/old/TI1213/UBI_1213_TI_Aula3.pdf · UNIVERSIDADE DA BEIRA INTERIOR Faculdade de Engenharia Departamento de Informática 2010, 2012, 2013 - Nuno

  • Upload
    others

  • View
    2

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Tecnologias da Internet - UBIngarcia/old/TI1213/UBI_1213_TI_Aula3.pdf · UNIVERSIDADE DA BEIRA INTERIOR Faculdade de Engenharia Departamento de Informática 2010, 2012, 2013 - Nuno

Tecnologias da InternetAno Lectivo 2012/2013 * 2º Semestre

Licenciaturas em Engenharia Informática (5378)

Tecnologias e Sistemas da Informação (6625)Aula 3, 8/3/2013

UNIVERSIDADE DA BEIRA INTERIORFaculdade de EngenhariaDepartamento de Informática

Nuno M. Garcia, [email protected]

Page 2: Tecnologias da Internet - UBIngarcia/old/TI1213/UBI_1213_TI_Aula3.pdf · UNIVERSIDADE DA BEIRA INTERIOR Faculdade de Engenharia Departamento de Informática 2010, 2012, 2013 - Nuno

UNIVERSIDADE DA BEIRA INTERIORFaculdade de EngenhariaDepartamento de Informática

2010, 2012, 2013 - Nuno M. Garcia, [email protected]

Tecnologias da Internet

• Coisas para fazer:

• Descrever as funções de cada uma das camadas do modelo OSI

• Ler as páginas seguintes (comparar as versões em Português e em Inglês)

• http://en.wikipedia.org/wiki/Internet_Protocol

• http://en.wikipedia.org/wiki/IPv4

• http://en.wikipedia.org/wiki/IPv6

• http://pt.wikipedia.org/wiki/Rede_de_computadores

• (NÃO É PRECISO entregar estas revisões, é trabalho privado)

• Na próxima aula: como funciona o protocolo HTTP?

2

Fizeram isto???

Page 3: Tecnologias da Internet - UBIngarcia/old/TI1213/UBI_1213_TI_Aula3.pdf · UNIVERSIDADE DA BEIRA INTERIOR Faculdade de Engenharia Departamento de Informática 2010, 2012, 2013 - Nuno

UNIVERSIDADE DA BEIRA INTERIORFaculdade de EngenhariaDepartamento de Informática

2010, 2012, 2013 - Nuno M. Garcia, [email protected]

Tecnologias da Internet

• Agenda:

• Dia do profissional (follow up)

• Semana da UBI / Jornadas NINF

• Revisões de conceitos importantes

• o padrão HTTP

Page 4: Tecnologias da Internet - UBIngarcia/old/TI1213/UBI_1213_TI_Aula3.pdf · UNIVERSIDADE DA BEIRA INTERIOR Faculdade de Engenharia Departamento de Informática 2010, 2012, 2013 - Nuno

UNIVERSIDADE DA BEIRA INTERIORFaculdade de EngenhariaDepartamento de Informática

2010, 2012, 2013 - Nuno M. Garcia, [email protected]

Tecnologias da Internet

4

Addressing Scheme + Common Protocols + Format Negotiation

R

Page 5: Tecnologias da Internet - UBIngarcia/old/TI1213/UBI_1213_TI_Aula3.pdf · UNIVERSIDADE DA BEIRA INTERIOR Faculdade de Engenharia Departamento de Informática 2010, 2012, 2013 - Nuno

UNIVERSIDADE DA BEIRA INTERIORFaculdade de EngenhariaDepartamento de Informática

2010, 2012, 2013 - Nuno M. Garcia, [email protected]

Tecnologias da Internet

5

Endereço 1Endereço 2

Endereço 3

Endereço npacotes de dados

R

Page 6: Tecnologias da Internet - UBIngarcia/old/TI1213/UBI_1213_TI_Aula3.pdf · UNIVERSIDADE DA BEIRA INTERIOR Faculdade de Engenharia Departamento de Informática 2010, 2012, 2013 - Nuno

UNIVERSIDADE DA BEIRA INTERIORFaculdade de EngenhariaDepartamento de Informática

2010, 2012, 2013 - Nuno M. Garcia, [email protected]

Tecnologias da Internet• Endereços IP (IP = Internet Protocol)

• IPv4: endereços no formato FF.FF.FF.FF (hex)

• por exemplo: 193.136.66.5

6

R

Page 7: Tecnologias da Internet - UBIngarcia/old/TI1213/UBI_1213_TI_Aula3.pdf · UNIVERSIDADE DA BEIRA INTERIOR Faculdade de Engenharia Departamento de Informática 2010, 2012, 2013 - Nuno

UNIVERSIDADE DA BEIRA INTERIORFaculdade de EngenhariaDepartamento de Informática

2010, 2012, 2013 - Nuno M. Garcia, [email protected]

Tecnologias da Internet

• Endereços IPv6 têm o formatoFFFF:FFFF:FFFF:FFFF:FFFF:FFFF:FFFF:FFFF (oito grupo de 2 bytes cada)

• por exemplo: 3ffe:1900:4545:3:200:f8ff:fe21:67cf

7

R

Page 8: Tecnologias da Internet - UBIngarcia/old/TI1213/UBI_1213_TI_Aula3.pdf · UNIVERSIDADE DA BEIRA INTERIOR Faculdade de Engenharia Departamento de Informática 2010, 2012, 2013 - Nuno

UNIVERSIDADE DA BEIRA INTERIORFaculdade de EngenhariaDepartamento de Informática

2010, 2012, 2013 - Nuno M. Garcia, [email protected]

Tecnologias da Internet

• Em resumo: cada computador que está ligado à Internet tem um endereço único, que lhe permite comunicar com todos os outros computadores.

• Esse endereço é um endereço IP.

• Certo? nem por isso...

• IPv4 = endereços públicos e endereços privados

• IPv6 = possibilidade de existência apenas de endereços públicos

PORQUÊ?

8

R

Page 9: Tecnologias da Internet - UBIngarcia/old/TI1213/UBI_1213_TI_Aula3.pdf · UNIVERSIDADE DA BEIRA INTERIOR Faculdade de Engenharia Departamento de Informática 2010, 2012, 2013 - Nuno

UNIVERSIDADE DA BEIRA INTERIORFaculdade de EngenhariaDepartamento de Informática

2010, 2012, 2013 - Nuno M. Garcia, [email protected]

Tecnologias da Internet

9

R

Page 10: Tecnologias da Internet - UBIngarcia/old/TI1213/UBI_1213_TI_Aula3.pdf · UNIVERSIDADE DA BEIRA INTERIOR Faculdade de Engenharia Departamento de Informática 2010, 2012, 2013 - Nuno

UNIVERSIDADE DA BEIRA INTERIORFaculdade de EngenhariaDepartamento de Informática

2010, 2012, 2013 - Nuno M. Garcia, [email protected]

Tecnologias da InternetGenericamente, como são transmitidos os dados sobre um pacote IP?

10

R

Page 11: Tecnologias da Internet - UBIngarcia/old/TI1213/UBI_1213_TI_Aula3.pdf · UNIVERSIDADE DA BEIRA INTERIOR Faculdade de Engenharia Departamento de Informática 2010, 2012, 2013 - Nuno

UNIVERSIDADE DA BEIRA INTERIORFaculdade de EngenhariaDepartamento de Informática

2010, 2012, 2013 - Nuno M. Garcia, [email protected]

Tecnologias da Internet

• Existem computadores na Internet cuja função é manterem as tabelas de relação entre um endereço IP e o seu nome de domínio.

• Essas máquinas integram aquilo que se chama a estrutura de DNS (Domain Name Servers).

11

R

Page 12: Tecnologias da Internet - UBIngarcia/old/TI1213/UBI_1213_TI_Aula3.pdf · UNIVERSIDADE DA BEIRA INTERIOR Faculdade de Engenharia Departamento de Informática 2010, 2012, 2013 - Nuno

UNIVERSIDADE DA BEIRA INTERIORFaculdade de EngenhariaDepartamento de Informática

2010, 2012, 2013 - Nuno M. Garcia, [email protected]

Tecnologias da Internet

12

R

Page 13: Tecnologias da Internet - UBIngarcia/old/TI1213/UBI_1213_TI_Aula3.pdf · UNIVERSIDADE DA BEIRA INTERIOR Faculdade de Engenharia Departamento de Informática 2010, 2012, 2013 - Nuno

UNIVERSIDADE DA BEIRA INTERIORFaculdade de EngenhariaDepartamento de Informática

2010, 2012, 2013 - Nuno M. Garcia, [email protected]

Tecnologias da Internet

• Anatomia de um nome Internet (URI)

http://www.server.org/folder/document.txt

http: - especificação do protocolowww - especificação do sub-domínioserver - especificação do nome do servidororg - especificação do domínio de topo (Top Level Domain)folder - nome da pasta onde se encontra o documentodocument.txt - identificação do documento.

13

R

Page 14: Tecnologias da Internet - UBIngarcia/old/TI1213/UBI_1213_TI_Aula3.pdf · UNIVERSIDADE DA BEIRA INTERIOR Faculdade de Engenharia Departamento de Informática 2010, 2012, 2013 - Nuno

UNIVERSIDADE DA BEIRA INTERIORFaculdade de EngenhariaDepartamento de Informática

2010, 2012, 2013 - Nuno M. Garcia, [email protected]

Tecnologias da Internet

• Exemplo de URIs

• http://www.di.ubi.pt/~ngarcia/index.html

• http://193.136.66.5/~ngarcia/index.html

14

R

Page 15: Tecnologias da Internet - UBIngarcia/old/TI1213/UBI_1213_TI_Aula3.pdf · UNIVERSIDADE DA BEIRA INTERIOR Faculdade de Engenharia Departamento de Informática 2010, 2012, 2013 - Nuno

UNIVERSIDADE DA BEIRA INTERIORFaculdade de EngenhariaDepartamento de Informática

2010, 2012, 2013 - Nuno M. Garcia, [email protected]

Tecnologias da Internet• Exemplos de atribuição entre nomes e endereços

IP

15

www.ubi.pt 193.136.66.209www.di.ubi.pt 193.136.66.5

penhas.di.ubi.pt 193.136.66.27ninf.ubi.pt 193.136.64.183

www.parlamento.pt 80.251.167.27www.google.pt 209.85.227.147

R

Page 16: Tecnologias da Internet - UBIngarcia/old/TI1213/UBI_1213_TI_Aula3.pdf · UNIVERSIDADE DA BEIRA INTERIOR Faculdade de Engenharia Departamento de Informática 2010, 2012, 2013 - Nuno

UNIVERSIDADE DA BEIRA INTERIORFaculdade de EngenhariaDepartamento de Informática

2010, 2012, 2013 - Nuno M. Garcia, [email protected]

Tecnologias da Internet

• O Protocolo de Transferência de Hiper-TextoHyperText Transfer Protocol (HTTP)

É definido colaborativamente pela World Wide Web Consortium (W3C http://w3c.org) e pela Internet Engineering Task Force (IETF http://www.ietf.org)

• O HTTP 1.1 está definido na RFC 2616 (Junho de 1999) (http://tools.ietf.org/html/rfc2616)

16

Page 17: Tecnologias da Internet - UBIngarcia/old/TI1213/UBI_1213_TI_Aula3.pdf · UNIVERSIDADE DA BEIRA INTERIOR Faculdade de Engenharia Departamento de Informática 2010, 2012, 2013 - Nuno

UNIVERSIDADE DA BEIRA INTERIORFaculdade de EngenhariaDepartamento de Informática

2010, 2012, 2013 - Nuno M. Garcia, [email protected]

Tecnologias da Internet

• 1989 - Tim Berners-Lee, a trabalhar no CERN (European Organization for Nuclear Research), propôs criar um novo projecto com o objectivo de facilitar a troca de informação entre cientistas, usando um sistema de hipertexto.

• 1990 - Berners-Lee escreve dois:

• um browser chamado WorldWideWeb;

• um servidor de hipertexto, o primeiro servidor www conhecido como CERN httpd, instalado num computador NeXTSTEP.

• 1994 - Tim Berners-Lee constitui o World Wide Web Consortium para regular o desenvolvimento e criar padrões das tecnologias envolvidas (HTTP, HTML, etc.).

17

Page 18: Tecnologias da Internet - UBIngarcia/old/TI1213/UBI_1213_TI_Aula3.pdf · UNIVERSIDADE DA BEIRA INTERIOR Faculdade de Engenharia Departamento de Informática 2010, 2012, 2013 - Nuno

UNIVERSIDADE DA BEIRA INTERIORFaculdade de EngenhariaDepartamento de Informática

2010, 2012, 2013 - Nuno M. Garcia, [email protected]

Tecnologias da Internet

• Numa comunicação HTTP, existe um cliente e um servidor.

• O servidor é um computador que se situa na Internet, que tem um IP público, e que corre um software de serviço HTTP. Além disso, este computador tem acesso às páginas que tem que disponibilizar aos clientes que as solicitem.

• O cliente comunica com o servidor, pede uma página, e interpreta os comandos que essa página contém, exibindo o resultado no ecrã.

18

!!!

Page 19: Tecnologias da Internet - UBIngarcia/old/TI1213/UBI_1213_TI_Aula3.pdf · UNIVERSIDADE DA BEIRA INTERIOR Faculdade de Engenharia Departamento de Informática 2010, 2012, 2013 - Nuno

UNIVERSIDADE DA BEIRA INTERIORFaculdade de EngenhariaDepartamento de Informática

2010, 2012, 2013 - Nuno M. Garcia, [email protected]

Tecnologias da Internet

Exemplos de softwares que são servidores de HTTP:> APACHE (http://www.apache.org)> Microsoft (Microsoft Personal Web Server, Microsoft Internet Information Server, ...)> ... outros ...> + de 150.000 resultados no Google para “free HTTP server” (muitos são Open Source)

19

Page 20: Tecnologias da Internet - UBIngarcia/old/TI1213/UBI_1213_TI_Aula3.pdf · UNIVERSIDADE DA BEIRA INTERIOR Faculdade de Engenharia Departamento de Informática 2010, 2012, 2013 - Nuno

UNIVERSIDADE DA BEIRA INTERIORFaculdade de EngenhariaDepartamento de Informática

2010, 2012, 2013 - Nuno M. Garcia, [email protected]

Tecnologias da Internet

• Exemplos de softwares que fazem de clientes HTTP (entre outros protocolos) - BROWSERMosaicFirefoxInternet ExplorerChromeSafariOpera(... cada plataforma pode ter um cliente específico)

20

Page 21: Tecnologias da Internet - UBIngarcia/old/TI1213/UBI_1213_TI_Aula3.pdf · UNIVERSIDADE DA BEIRA INTERIOR Faculdade de Engenharia Departamento de Informática 2010, 2012, 2013 - Nuno

UNIVERSIDADE DA BEIRA INTERIORFaculdade de EngenhariaDepartamento de Informática

2010, 2012, 2013 - Nuno M. Garcia, [email protected]

Tecnologias da Internet“The Hypertext Transfer Protocol (HTTP) is an application-level protocol for distributed, collaborative, hypermedia information systems. HTTP has been in use by the World-Wide Web global information initiative since 1990. The first version of HTTP, referred to as HTTP/0.9, was a simple protocol for raw data transfer across the Internet. HTTP/1.0, as defined by RFC 1945, improved the protocol by allowing messages to be in the format of MIME-like messages, containing metainformation about the data transferred and modifiers on the request/response semantics. However, HTTP/1.0 does not sufficiently take into consideration the effects of hierarchical proxies, caching, the need for persistent connections, or virtual hosts. In addition, the proliferation of incompletely-implemented applications calling themselves "HTTP/1.0" has necessitated a protocol version change in order for two communicating applications to determine each other's true capabilities.

This specification defines the protocol referred to as "HTTP/1.1". This protocol includes more stringent requirements than HTTP/1.0 in order to ensure reliable implementation of its features.”

(in http://www.w3.org/Protocols/rfc2616/rfc2616-sec1.html#sec1.1)

21

Page 22: Tecnologias da Internet - UBIngarcia/old/TI1213/UBI_1213_TI_Aula3.pdf · UNIVERSIDADE DA BEIRA INTERIOR Faculdade de Engenharia Departamento de Informática 2010, 2012, 2013 - Nuno

UNIVERSIDADE DA BEIRA INTERIORFaculdade de EngenhariaDepartamento de Informática

2010, 2012, 2013 - Nuno M. Garcia, [email protected]

Tecnologias da Internet

22

Cliente HTTP Servidor HTTP

Page 23: Tecnologias da Internet - UBIngarcia/old/TI1213/UBI_1213_TI_Aula3.pdf · UNIVERSIDADE DA BEIRA INTERIOR Faculdade de Engenharia Departamento de Informática 2010, 2012, 2013 - Nuno

UNIVERSIDADE DA BEIRA INTERIORFaculdade de EngenhariaDepartamento de Informática

2010, 2012, 2013 - Nuno M. Garcia, [email protected]

Tecnologias da Internet

23

Cliente HTTP Servidor HTTP

IPwww.ubi.pt?

Servidor DNS

Page 24: Tecnologias da Internet - UBIngarcia/old/TI1213/UBI_1213_TI_Aula3.pdf · UNIVERSIDADE DA BEIRA INTERIOR Faculdade de Engenharia Departamento de Informática 2010, 2012, 2013 - Nuno

UNIVERSIDADE DA BEIRA INTERIORFaculdade de EngenhariaDepartamento de Informática

2010, 2012, 2013 - Nuno M. Garcia, [email protected]

Tecnologias da Internet

24

Cliente HTTP Servidor HTTP

IPwww.ubi.pt =

193.136.66.209

Servidor DNS

Page 25: Tecnologias da Internet - UBIngarcia/old/TI1213/UBI_1213_TI_Aula3.pdf · UNIVERSIDADE DA BEIRA INTERIOR Faculdade de Engenharia Departamento de Informática 2010, 2012, 2013 - Nuno

UNIVERSIDADE DA BEIRA INTERIORFaculdade de EngenhariaDepartamento de Informática

2010, 2012, 2013 - Nuno M. Garcia, [email protected]

Tecnologias da Internet

25

Cliente HTTP Servidor HTTP

Servidor DNS

telnet 193.136.66.209 80

193.136.66.209:80

Page 26: Tecnologias da Internet - UBIngarcia/old/TI1213/UBI_1213_TI_Aula3.pdf · UNIVERSIDADE DA BEIRA INTERIOR Faculdade de Engenharia Departamento de Informática 2010, 2012, 2013 - Nuno

UNIVERSIDADE DA BEIRA INTERIORFaculdade de EngenhariaDepartamento de Informática

2010, 2012, 2013 - Nuno M. Garcia, [email protected]

Tecnologias da Internet

26

Cliente HTTP Servidor HTTP

Servidor DNS

OK

193.136.66.209:80

Page 27: Tecnologias da Internet - UBIngarcia/old/TI1213/UBI_1213_TI_Aula3.pdf · UNIVERSIDADE DA BEIRA INTERIOR Faculdade de Engenharia Departamento de Informática 2010, 2012, 2013 - Nuno

UNIVERSIDADE DA BEIRA INTERIORFaculdade de EngenhariaDepartamento de Informática

2010, 2012, 2013 - Nuno M. Garcia, [email protected]

Tecnologias da Internet

27

Cliente HTTP Servidor HTTP

Servidor DNS

GET / HTTP/1.1Host: www.ubi.pt

193.136.66.209:80

Page 28: Tecnologias da Internet - UBIngarcia/old/TI1213/UBI_1213_TI_Aula3.pdf · UNIVERSIDADE DA BEIRA INTERIOR Faculdade de Engenharia Departamento de Informática 2010, 2012, 2013 - Nuno

UNIVERSIDADE DA BEIRA INTERIORFaculdade de EngenhariaDepartamento de Informática

2010, 2012, 2013 - Nuno M. Garcia, [email protected]

Tecnologias da Internet

28

Cliente HTTP Servidor HTTP

Servidor DNS

HTTP/1.1 200 OKDate: Sun, 07 Mar 2010 18:23:09 GMT

Server: Microsoft-IIS/6.0X-Powered-By: ASP.NET

Page 29: Tecnologias da Internet - UBIngarcia/old/TI1213/UBI_1213_TI_Aula3.pdf · UNIVERSIDADE DA BEIRA INTERIOR Faculdade de Engenharia Departamento de Informática 2010, 2012, 2013 - Nuno

UNIVERSIDADE DA BEIRA INTERIORFaculdade de EngenhariaDepartamento de Informática

2010, 2012, 2013 - Nuno M. Garcia, [email protected]

Tecnologias da Internet

29

Pedido

Resposta...........V

Page 30: Tecnologias da Internet - UBIngarcia/old/TI1213/UBI_1213_TI_Aula3.pdf · UNIVERSIDADE DA BEIRA INTERIOR Faculdade de Engenharia Departamento de Informática 2010, 2012, 2013 - Nuno

UNIVERSIDADE DA BEIRA INTERIORFaculdade de EngenhariaDepartamento de Informática

2010, 2012, 2013 - Nuno M. Garcia, [email protected]

Tecnologias da Internet

• Isto é quando as coisas correm bem...

• recordar mensagem: HTTP/1.1 200 OK

• E quando correm mal?

• Erros HTTP:

• erros da classe 4xx e da classe 5xx

• e.g. 404 Not Found, 505 HTTP Version Not Supported

30

Page 31: Tecnologias da Internet - UBIngarcia/old/TI1213/UBI_1213_TI_Aula3.pdf · UNIVERSIDADE DA BEIRA INTERIOR Faculdade de Engenharia Departamento de Informática 2010, 2012, 2013 - Nuno

UNIVERSIDADE DA BEIRA INTERIORFaculdade de EngenhariaDepartamento de Informática

2010, 2012, 2013 - Nuno M. Garcia, [email protected]

Tecnologias da Internet

• Que pedidos é que um cliente HTTP pode fazer a um servidor HTTP?

• Já vimos um dos pedidos:

• GET /folder/document.html HTTP/1.1Host: www.website.com

31

Page 32: Tecnologias da Internet - UBIngarcia/old/TI1213/UBI_1213_TI_Aula3.pdf · UNIVERSIDADE DA BEIRA INTERIOR Faculdade de Engenharia Departamento de Informática 2010, 2012, 2013 - Nuno

UNIVERSIDADE DA BEIRA INTERIORFaculdade de EngenhariaDepartamento de Informática

2010, 2012, 2013 - Nuno M. Garcia, [email protected]

Tecnologias da Internet

• Pedidos HTTP:

• GET

• HEAD

• PUT

• ... alguns outros (é matéria de TPC)

32

Page 33: Tecnologias da Internet - UBIngarcia/old/TI1213/UBI_1213_TI_Aula3.pdf · UNIVERSIDADE DA BEIRA INTERIOR Faculdade de Engenharia Departamento de Informática 2010, 2012, 2013 - Nuno

UNIVERSIDADE DA BEIRA INTERIORFaculdade de EngenhariaDepartamento de Informática

2010, 2012, 2013 - Nuno M. Garcia, [email protected]

Tecnologias da Internet

• Um comando HTTP tem o seguinte formato genérico:

<linha inicial, diferente para pedido e resposta>Header1: valor1Header2: valor2Header3: valor3

<linhas opcionais que contêm o corpo da mensagem. pode ter qualquer comprimento e incluir dados que não sejam de texto. o tamanho é controlado pela opção Content-Length no cabeçalho e o tipo de dados é controlado pela opção Content-Type também do cabeçalho>

33

Page 34: Tecnologias da Internet - UBIngarcia/old/TI1213/UBI_1213_TI_Aula3.pdf · UNIVERSIDADE DA BEIRA INTERIOR Faculdade de Engenharia Departamento de Informática 2010, 2012, 2013 - Nuno

UNIVERSIDADE DA BEIRA INTERIORFaculdade de EngenhariaDepartamento de Informática

2010, 2012, 2013 - Nuno M. Garcia, [email protected]

Tecnologias da Internet

• Exemplo de um POST

POST /userlogin.jsp HTTP/1.1 Host: www.samplesite.com User-Agent: Mozilla/4.0 Content-Length: 29 Content-Type: application/x-www-form-urlencoded

userid=john&password=test1234

34

Page 35: Tecnologias da Internet - UBIngarcia/old/TI1213/UBI_1213_TI_Aula3.pdf · UNIVERSIDADE DA BEIRA INTERIOR Faculdade de Engenharia Departamento de Informática 2010, 2012, 2013 - Nuno

UNIVERSIDADE DA BEIRA INTERIORFaculdade de EngenhariaDepartamento de Informática

2010, 2012, 2013 - Nuno M. Garcia, [email protected]

Tecnologias da Internet

• Outro exemplo de um POST

POST /path/datascript.cgi HTTP/1.0 From: [email protected]: HTTPTool/1.0Content-Type: application/x-www-form-urlencodedContent-Length: 32

home=Nuno&favoritecolor=yellow

35

Page 36: Tecnologias da Internet - UBIngarcia/old/TI1213/UBI_1213_TI_Aula3.pdf · UNIVERSIDADE DA BEIRA INTERIOR Faculdade de Engenharia Departamento de Informática 2010, 2012, 2013 - Nuno

UNIVERSIDADE DA BEIRA INTERIORFaculdade de EngenhariaDepartamento de Informática

2010, 2012, 2013 - Nuno M. Garcia, [email protected]

Tecnologias da Internet

• Existem outras formas de enviar dados ao servidor de HTTP.

• Em vez de usar um POST, podem enviar-se pedidos ao servidor usando o URL.GET /path/script.cgi?field1=valor1&field2=valor2 HTTP/1.0

• Por exemplo:http://www.youtube.com/watch?v=TTaulpClHco

36

:-)

Page 37: Tecnologias da Internet - UBIngarcia/old/TI1213/UBI_1213_TI_Aula3.pdf · UNIVERSIDADE DA BEIRA INTERIOR Faculdade de Engenharia Departamento de Informática 2010, 2012, 2013 - Nuno

UNIVERSIDADE DA BEIRA INTERIORFaculdade de EngenhariaDepartamento de Informática

2010, 2012, 2013 - Nuno M. Garcia, [email protected]

Tecnologias da Internet

• HTML 4.01(in http://www.w3.org/TR/html401/)

• “This specification defines the HyperText Markup Language (HTML), the publishing language of the World Wide Web. This specification defines HTML 4.01, which is a subversion of HTML 4. In addition to the text, multimedia, and hyperlink features of the previous versions of HTML (HTML 3.2 and HTML 2.0), HTML 4 supports more multimedia options, scripting languages, style sheets, better printing facilities, and documents that are more accessible to users with disabilities. HTML 4 also takes great strides towards the internationalization of documents, with the goal of making the Web truly World Wide.”

37

Page 38: Tecnologias da Internet - UBIngarcia/old/TI1213/UBI_1213_TI_Aula3.pdf · UNIVERSIDADE DA BEIRA INTERIOR Faculdade de Engenharia Departamento de Informática 2010, 2012, 2013 - Nuno

UNIVERSIDADE DA BEIRA INTERIORFaculdade de EngenhariaDepartamento de Informática

2010, 2012, 2013 - Nuno M. Garcia, [email protected]

Tecnologias da Internet

• HTML 4.0

• Internacionalização (suporte para conjuntos de caracteres nacionais, sentido de escrita de texto, etc...)

• Acessibilidade melhorada

• Novo modelo de tabelas

• Documentos compostos (elemento Object)

• Folhas de estilo (Style Sheets)

• Scripting (smart forms)

• Impressão de documentos complexos (elemento Link)

38

Page 39: Tecnologias da Internet - UBIngarcia/old/TI1213/UBI_1213_TI_Aula3.pdf · UNIVERSIDADE DA BEIRA INTERIOR Faculdade de Engenharia Departamento de Informática 2010, 2012, 2013 - Nuno

UNIVERSIDADE DA BEIRA INTERIORFaculdade de EngenhariaDepartamento de Informática

2010, 2012, 2013 - Nuno M. Garcia, [email protected]

Tecnologias da Internet

• SGML e HTMLStandard Generalized Markup LanguageHypertext Markup Language

• O SGML é um sistema para definir uma Linguagem com Marcação (Markup Language).

• Numa linguagem com marcação os autores marcam os seus documentos por forma a incluir informação estrutural, de apresentação e informação semântica integrada no conteúdo do documento.

• O HTML é um uma SGML.

39

Page 40: Tecnologias da Internet - UBIngarcia/old/TI1213/UBI_1213_TI_Aula3.pdf · UNIVERSIDADE DA BEIRA INTERIOR Faculdade de Engenharia Departamento de Informática 2010, 2012, 2013 - Nuno

UNIVERSIDADE DA BEIRA INTERIORFaculdade de EngenhariaDepartamento de Informática

2010, 2012, 2013 - Nuno M. Garcia, [email protected]

Tecnologias da Internet

• Uma linguagem com marcação definida em SGML é dita uma aplicação de SGML. Uma aplicação de SGML é geralmente caracterizada por ter:

• uma declaração SGML: define que caracteres e delimitadores podem aparecer na aplicação

• Uma definição de tipo de documento (Document Type Definition - DTD). O DTD define a sintaxe das construções de marcação. Pode incluir definições adicionais como referências de identidade de caracteres (&lt == <).

• A especificação da semântica da marcação. Esta especificação impõe restrições à sintaxe.

• Instâncias do documento contendo dados e marcações. Cada documento contém referência ao DTD usado para o interpretar.

40

Page 41: Tecnologias da Internet - UBIngarcia/old/TI1213/UBI_1213_TI_Aula3.pdf · UNIVERSIDADE DA BEIRA INTERIOR Faculdade de Engenharia Departamento de Informática 2010, 2012, 2013 - Nuno

UNIVERSIDADE DA BEIRA INTERIORFaculdade de EngenhariaDepartamento de Informática

2010, 2012, 2013 - Nuno M. Garcia, [email protected]

Tecnologias da Internet

• Exemplo de HTML

41

Page 42: Tecnologias da Internet - UBIngarcia/old/TI1213/UBI_1213_TI_Aula3.pdf · UNIVERSIDADE DA BEIRA INTERIOR Faculdade de Engenharia Departamento de Informática 2010, 2012, 2013 - Nuno

UNIVERSIDADE DA BEIRA INTERIORFaculdade de EngenhariaDepartamento de Informática

2010, 2012, 2013 - Nuno M. Garcia, [email protected]

Tecnologias da Internet

• Construtores de SGML presentes no HTML

• Elementos. Cada elemento é composto normalmente por três partes: etiqueta de início, conteúdo, etiqueta de fim.

• Há elementos que podem omitir a etiqueta final, como por exemplo, a etiqueta <p> e a etiqueta <li>.

• Há elementos que podem omitir a etiqueta inicial, como por exemplo a etiqueta <head> e <body>.

• Os nomes de elementos não são agnósticos em relação às maiúsculas.

42

Page 43: Tecnologias da Internet - UBIngarcia/old/TI1213/UBI_1213_TI_Aula3.pdf · UNIVERSIDADE DA BEIRA INTERIOR Faculdade de Engenharia Departamento de Informática 2010, 2012, 2013 - Nuno

UNIVERSIDADE DA BEIRA INTERIORFaculdade de EngenhariaDepartamento de Informática

2010, 2012, 2013 - Nuno M. Garcia, [email protected]

Tecnologias da Internet

43

equivalentes

etiquetas que podem ser omitidas

Page 44: Tecnologias da Internet - UBIngarcia/old/TI1213/UBI_1213_TI_Aula3.pdf · UNIVERSIDADE DA BEIRA INTERIOR Faculdade de Engenharia Departamento de Informática 2010, 2012, 2013 - Nuno

UNIVERSIDADE DA BEIRA INTERIORFaculdade de EngenhariaDepartamento de Informática

2010, 2012, 2013 - Nuno M. Garcia, [email protected]

Tecnologias da Internet

• Construtores de SGML presentes no HTML

• Elementos. Esta é a lista de todos os elementos usáveis em HTML 4.01:

• http://www.w3.org/TR/html401/index/elements.html

44

Page 45: Tecnologias da Internet - UBIngarcia/old/TI1213/UBI_1213_TI_Aula3.pdf · UNIVERSIDADE DA BEIRA INTERIOR Faculdade de Engenharia Departamento de Informática 2010, 2012, 2013 - Nuno

UNIVERSIDADE DA BEIRA INTERIORFaculdade de EngenhariaDepartamento de Informática

2010, 2012, 2013 - Nuno M. Garcia, [email protected]

Tecnologias da Internet

• Construtores de SGML presentes no HTML

• Elementos.

• Atributos.

• Os elementos podem ter propriedades associadas, denominadas atributos. Os atributos são definidos na etiqueta de definição do elemento, antes do sinal de >.

• Os nomes dos atributos são agnósticos quanto ao uso de maísculas. Os valores dos atributos são geralmente agnósticos quanto às maíusculas.

• Os valores de atributos estão compreendidos entre ”” ou ’ ’.

45

Page 46: Tecnologias da Internet - UBIngarcia/old/TI1213/UBI_1213_TI_Aula3.pdf · UNIVERSIDADE DA BEIRA INTERIOR Faculdade de Engenharia Departamento de Informática 2010, 2012, 2013 - Nuno

UNIVERSIDADE DA BEIRA INTERIORFaculdade de EngenhariaDepartamento de Informática

2010, 2012, 2013 - Nuno M. Garcia, [email protected]

Tecnologias da Internet• Construtores de SGML presentes no HTML

• Atributos. Esta é a lista de todos os atributos usáveis em HTML 4.01:

• http://www.w3.org/TR/html401/index/attributes.html

46

Page 47: Tecnologias da Internet - UBIngarcia/old/TI1213/UBI_1213_TI_Aula3.pdf · UNIVERSIDADE DA BEIRA INTERIOR Faculdade de Engenharia Departamento de Informática 2010, 2012, 2013 - Nuno

UNIVERSIDADE DA BEIRA INTERIORFaculdade de EngenhariaDepartamento de Informática

2010, 2012, 2013 - Nuno M. Garcia, [email protected]

Tecnologias da Internet

• Construtores de SGML presentes no HTML

• Elementos.

• Atributos.

• Referências a caracteres.

• Permitem a inclusão de caracteres no documento

• "&gt;" representa o sinal >

• "&quot;" representa o caracter "

• "&#229;" (em decimal) representa a letra “a” com um pequeno circulo em cima

• "&#x6C34;" (em hexadecimal) representa o ideograma Chinês para água

47

Page 48: Tecnologias da Internet - UBIngarcia/old/TI1213/UBI_1213_TI_Aula3.pdf · UNIVERSIDADE DA BEIRA INTERIOR Faculdade de Engenharia Departamento de Informática 2010, 2012, 2013 - Nuno

UNIVERSIDADE DA BEIRA INTERIORFaculdade de EngenhariaDepartamento de Informática

2010, 2012, 2013 - Nuno M. Garcia, [email protected]

Tecnologias da Internet

• Construtores de SGML presentes no HTML

• Referências a caracteres. Esta é a lista de todas as referências a caracteres usáveis em HTML 4.01:

• http://www.w3.org/TR/html401/sgml/entities.html

48

Page 49: Tecnologias da Internet - UBIngarcia/old/TI1213/UBI_1213_TI_Aula3.pdf · UNIVERSIDADE DA BEIRA INTERIOR Faculdade de Engenharia Departamento de Informática 2010, 2012, 2013 - Nuno

UNIVERSIDADE DA BEIRA INTERIORFaculdade de EngenhariaDepartamento de Informática

2010, 2012, 2013 - Nuno M. Garcia, [email protected]

Tecnologias da Internet

• Construtores de SGML presentes no HTML

• Elementos.

• Atributos.

• Referências a caracteres.

• Comentários.

• Os comentários não interpretam o texto.

• Os comentários têm este aspecto:

49

Page 50: Tecnologias da Internet - UBIngarcia/old/TI1213/UBI_1213_TI_Aula3.pdf · UNIVERSIDADE DA BEIRA INTERIOR Faculdade de Engenharia Departamento de Informática 2010, 2012, 2013 - Nuno

UNIVERSIDADE DA BEIRA INTERIORFaculdade de EngenhariaDepartamento de Informática

2010, 2012, 2013 - Nuno M. Garcia, [email protected]

Tecnologias da Internet

• A estrutura global de um documento HTML:http://www.w3.org/TR/html401/struct/global.html

• Os tipos básicos de dados em HTML: http://www.w3.org/TR/html401/types.html

50

Page 51: Tecnologias da Internet - UBIngarcia/old/TI1213/UBI_1213_TI_Aula3.pdf · UNIVERSIDADE DA BEIRA INTERIOR Faculdade de Engenharia Departamento de Informática 2010, 2012, 2013 - Nuno

UNIVERSIDADE DA BEIRA INTERIORFaculdade de EngenhariaDepartamento de Informática

2010, 2012, 2013 - Nuno M. Garcia, [email protected]

Tecnologias da Internet

• Ligações com informação adicional

• http://www.w3.org/TR/html401/

• http://www.w3.org/Protocols/rfc2616/rfc2616.html

• http://www.jmarshall.com/easy/http/

• http://developers.sun.com/mobility/midp/ttips/HTTPPost/

51

Page 52: Tecnologias da Internet - UBIngarcia/old/TI1213/UBI_1213_TI_Aula3.pdf · UNIVERSIDADE DA BEIRA INTERIOR Faculdade de Engenharia Departamento de Informática 2010, 2012, 2013 - Nuno

UNIVERSIDADE DA BEIRA INTERIORFaculdade de EngenhariaDepartamento de Informática

2010, 2012, 2013 - Nuno M. Garcia, [email protected]

Tecnologias da Internet

• TPC (não é para entregar!)

• Ver o sítio http://www.jmarshall.com/easy/http/

• Tentar usar o programa TELNET para conectar com o sítio do DI (www.di.ubi.pt) ou do NINF (ninf.ubi.pt).

• Na próxima aula: vamos continuar a ver a estrutura de um documento HTML 4.01, e vamos ver exemplos de HTML 5.0