URL é a sigla para Uniform Resource Locator
(Localizador Uniforme de Recursos), utilizado para identificar a localização de recursos na internet.
O formato do URL é scheme:[//authority]path[?query][#fragment]
, onde authority = [userinfo@]host[:port]
.
scheme
- Refere-se ao protocolo, como http ou ftp, obrigatóriouserinfo
- Informações do usuário para autenticação, no formato username:password, opcionalhost
- O host, pode ser um domínio ou IP, obrigatórioport
- Número da porta, opcional, utiliza a porta padrão do protocolo se não especificadapath
- Caminho, utilizado para representar diretórios e endereços de arquivos no host. Opcionalquery
- Parâmetros de consulta. Opcionalfragment
- Fragmento, refere-se a uma parte específica de um recurso na web. OpcionalUm exemplo simples de URL: https://www.codeeeee.com, utiliza apenas scheme
e host
, com a porta padrão de https
, que é 443
URI, sigla para Uniform Resource Identifier
(Identificador Uniforme de Recurso), é utilizado para nomear recursos na internet. URL e URI têm formatos similares e são frequentemente confundidos, podendo ser considerados equivalentes em alguns casos. A diferença entre eles é que URL representa a localização do recurso, enquanto URI representa o nome do recurso. URL é um tipo de URI.
URLs só podem conter caracteres do conjunto ASCII
, logo, quando aparecem caracteres fora deste conjunto, é necessário codificá-los. Além disso, URLs contêm alguns caracteres reservados, como :
, /
, &
, que também devem ser codificados para evitar confusão na interpretação da URL.
Ao codificar URLs, os caracteres são representados por sua codificação percentual (%). As regras específicas de codificação podem ser encontradas aqui.
Em Javascript, pode-se usar encodeURIComponent
e decodeURIComponent
para codificar e decodificar URLs.