PK Systems PK Systems
Web e marketing

Analisador de URL

Decompõe qualquer URL em protocolo, host, porta, caminho, query e fragmento — com decodificação punycode (IDN) e extração de pares chave/valor. Tudo no navegador.

Analisador de URL

Cole qualquer URL. Hosts ASCII e internacionalizados são suportados.

Componentes

Parâmetros da query

ChaveValor

Sem parâmetros na query.

URL normalizada

O que é um analisador de URL?

Um analisador de URL divide um Uniform Resource Locator nas partes definidas pela RFC 3986: scheme, userinfo opcional, host (com porta opcional), caminho, query e fragmento. Todo navegador, servidor, proxy, CDN e verificador de links faz isso internamente antes de rotear ou reescrever uma requisição. Ver a quebra de forma explícita ajuda a achar bugs de codificação, barras fora do lugar, credenciais por engano em URLs e ataques homográficos com IDN.

Como usar este analisador

Cole uma URL no campo. O painel de componentes atualiza na hora. Olhe a linha do host para ver se há punycode (host começando com xn-- está em IDN), confira a porta para saber se a URL usa o padrão do protocolo, e leia a tabela de parâmetros para ver exatamente quais chaves e valores chegam no servidor. A linha de URL normalizada mostra como o parser do navegador deixa a URL — scheme em minúsculas, porta padrão removida, percent-encoding limpo.

Por que fragmentos não chegam ao servidor

O fragmento — a parte depois do # — é reservado ao agente do usuário. Os navegadores removem antes de enviar a requisição HTTP, e por isso o servidor (e seus logs de acesso, e os dados brutos de página de destino do analytics) não consegue ver. Single-page apps abusam disso de propósito para que a navegação pareça instantânea: mudanças de rota atualizam o fragmento em vez de disparar requisição real. Se você precisa que um valor chegue ao servidor, coloque na query, não no fragmento.

Anatomia de uma URL

Parte Exemplo Função
protocolhttps:Diz ao cliente qual protocolo falar.
hostshop.example.comServidor de destino. Pode ser um domínio ou IP literal.
port8443Porta TCP. Padrão é 80 para http, 443 para https.
path/cart/checkoutCaminho do recurso no servidor. Sempre começa com /.
query?id=42&ref=hpPares chave/valor opcionais depois do ?.
fragment#paymentÂncora client-side depois do #. Nunca chega ao servidor.

Perguntas frequentes

Esta ferramenta envia minhas URLs para algum lugar?
Não. O parsing usa o construtor URL nativo do navegador; nada é enviado. Abra o DevTools > Network e nenhuma requisição dispara enquanto você digita.
O que é punycode?
Punycode é a codificação ASCII para nomes de domínio internacionalizados. münchen.de trafega como xn--mnchen-3ya.de. O parser mostra as duas formas para você identificar ataques homográficos onde um host malicioso se disfarça de marca conhecida.
Por que o parser mostra userinfo se eu colar uma URL com credenciais?
Porque a RFC 3986 ainda define essa sintaxe. Os navegadores exibem aviso e removem credenciais antes da navegação, mas várias CLIs, scrapers e SDKs antigos aceitam. Em revisão de código, tratar qualquer URL com userinfo como suspeita é um bom padrão.
Chaves de query repetidas são preservadas?
Sim. ?tag=a&tag=b mostra as duas linhas. Como o servidor interpreta duplicatas depende do framework — PHP mantém o último valor por padrão, o URLSearchParams do Node devolve um array. O parser não deduplica; mostra o que está na URL.
O que é decodificado de percent-encoding?
Cada componente aparece decodificado para leitura, mas a URL normalizada mantém a forma canônica percent-encoded para você colar de volta no código sem passar por caracteres inseguros. Espaços, barras e caracteres reservados continuam escapados onde necessário.
Posso analisar URLs mailto: ou tel:?
Sim — qualquer URL que o construtor URL do navegador aceitar. Em mailto: o endereço fica no caminho; cabeçalhos como ?subject= aparecem como parâmetros de query. Para construir mailto com mais conforto, use nosso construtor de mailto dedicado.