DEV Community

Diego Novais
Diego Novais

Posted on

Estrutura de uma URL

Quando digitamos um endereço na web para acessar um determinado site, informamos uma URL para que o navegador possa encontrar e acessar a página, serviço ou recurso.

O que é uma URL?

URL (acrônimo em inglês para Uniform Resource Locator) é um padrão definido em 1994 na RFC 1738 por Tim Berners-Lee (conhecido como o pai da "world Wide Web").

Uma URL é composta por uma série de informações específicas e um conjunto limitado de caracteres pertencentes ao conjunto de caracteres US-ASCII, seguindo um padrão para que possamos encontrar um serviço ou um recurso específico. Dessa forma os caracteres permitidos não incluem os acentos como os encontrados na língua portuguesa.

Para encontrarmos o que desejamos, precisamos digitar a URL corretamente.

Entenda a estrutura de uma URL

Estrutura de uma URL

Uma URL possui a seguinte estrutura:

1. Protocol (protocolo)

https://
Enter fullscreen mode Exit fullscreen mode

Toda URL se inicia com um protocolo para sinalizar o tipo de comunicação será feita através do endereço digitado para acessar um recurso na Internet.

Neste exemplo, o protocolo usado é o https. Contudo, existem muitos outros (FTP, News, Mailto, etc.).

2. Host

www.diegonovais.com.br
Enter fullscreen mode Exit fullscreen mode

O host é um nome (composto pelo subdomínio quando houver e pelo domínio) identificando um computador na internet (ou seu número de endereço IP).

3. Port (porta)

https://www.diegonovais.com.br:3000
Enter fullscreen mode Exit fullscreen mode

A porta é um número TCP associado ao protocolo usado na URL (como no exemplo :3000). A porta pode estar explicito apontando para uma porta específica, mas geralmente a porta não fica explicita na URL pois cada protocolo tem uma porta padrão (convenciona-se por exemplo que http é dado pela porta 80).

4. Path (caminho)

https://www.diegonovais.com.br:3000/blog/technologies.html
Enter fullscreen mode Exit fullscreen mode

O path é localização para encontrar o recurso, arquivo ou objeto dentro do servidor (exemplo /blog/technologies.html).

5. Query String (parâmetros)

https://www.diegonovais.com.br:3000/blog/technologies.html?name=ruby&subject=fundamentals
Enter fullscreen mode Exit fullscreen mode

A query string é um conjunto de um ou mais pares "pergunta-resposta" ou "parâmetro-argumento". Como no exemplo acima após ? (interrogação):

?name=ruby&subject=fundamentals

Para entendermos melhor:

name = ruby
subject = fundamentals
Enter fullscreen mode Exit fullscreen mode

Quando é feita a requisição no servidor as query strings são enviadas ao servidor para que seja possível filtrar ou mesmo criar o recurso.

6. Fragment (fragmento)

https://www.diegonovais.com.br/blog/technologies.html?name=ruby&subject=fundamentals#starting
Enter fullscreen mode Exit fullscreen mode

Um fragmento representa um "marcador" (âncora) que permite o navegador dar scrool na página (HTML) até encontrar e mostrar um determinado conteúdo referente a um elemento id com uma string igual ao valor passado ao fragmento: id="starting". Sua representação é a partir de um # seguido de uma string, como no exemplo acima: #starting. Além disso o fragmento não será enviado para o servidor junto com a requisição.

Discussion (0)