O que é a codificação URL, e porque é necessária
Um URL tem uma estrutura rígida: certos caracteres, como &, ? e #, têm um significado especial (separar parâmetros, marcar o início de uma query string, indicar uma âncora). Se o teu texto contiver esses caracteres, ou simplesmente um espaço ou uma letra acentuada, o navegador ou o servidor pode interpretá-los mal e cortar o endereço a meio.
A solução é a codificação percentual: cada carácter problemático é convertido nos seus bytes UTF-8, e cada byte é escrito na forma %XX (dois dígitos hexadecimais). Um espaço torna-se %20; a letra "é" ocupa 2 bytes em UTF-8 e torna-se %C3%A9. A ferramenta Codificador/Descodificador URL da ToolPico faz esta conversão instantaneamente, no separador "Codificar", incluindo texto com emoji.
encodeURIComponent vs. encodeURI: qual usar
encodeURIComponent() serve para codificar um único valor (um parâmetro), e também codifica &, =, ? e /. encodeURI() serve para um endereço completo e preserva os caracteres estruturais que o URL precisa para funcionar.Esta é provavelmente a confusão mais comum entre quem trabalha com formulários, APIs ou parâmetros de pesquisa. Se codificares um endereço inteiro com encodeURIComponent, vais acabar por codificar também o https:// e as barras, partindo o link. Se codificares apenas um valor de parâmetro com encodeURI, símbolos como & ou = dentro do próprio valor não serão protegidos, e podem confundir-se com a estrutura da query string.
| Texto original | encodeURIComponent | encodeURI |
|---|---|---|
| tenis de corrida | tenis%20de%20corrida | tenis%20de%20corrida |
| café & chá | caf%C3%A9%20%26%20ch%C3%A1 | caf%C3%A9%20&%20ch%C3%A1 |
| https://loja.pt/produto?a=1 | https%3A%2F%2Floja.pt%2Fproduto%3Fa%3D1 | https://loja.pt/produto?a=1 |
Repara na última linha da tabela acima (dados de exemplo ilustrativos): encodeURIComponent destrói a estrutura de um URL completo, enquanto encodeURI a mantém intacta — é exatamente por isso que a ferramenta oferece os dois modos em separado, no separador "Codificar".
Query strings e o problema dos parâmetros de tracking
chave=valor depois do "?" num URL. Muitos links partilhados nas redes sociais acumulam parâmetros de tracking como utm_source, gclid ou fbclid que não afetam o conteúdo mas tornam o link mais comprido e menos privado.
No separador "Analisar Query" da ferramenta, cola-se um URL completo e cada parâmetro aparece decomposto numa tabela, já descodificado — e os parâmetros de tracking conhecidos são assinalados automaticamente. Isto ajuda a perceber rapidamente o que um link está realmente a rastrear antes de o partilhares.
Cenário prático: imagina que recebes um link de uma loja online partilhado por um amigo, algo como https://loja.exemplo.com/produto?cor=vermelho&tamanho=42&utm_source=instagram&fbclid=abc123. Colando isto no separador "Analisar Query", vês de imediato que só cor e tamanho são relevantes para o produto — o resto é tracking que podes remover antes de reenviar o link a outra pessoa. Depois, no separador "Construir Query", consegues gerar uma versão limpa apenas com os parâmetros que interessam.
Base64 não é a mesma coisa que codificação URL
É comum confundir os dois porque ambos "transformam" texto num formato diferente, mas servem propósitos distintos. Uma cadeia Base64 pode inclusive precisar de codificação URL adicional, porque o alfabeto Base64 inclui os caracteres + e /, que têm significado especial num URL. A ferramenta ToolPico inclui ambas as conversões — Base64 e codificação percentual — na mesma interface, para que não seja preciso adivinhar qual delas se aplica ao teu caso.
Vale também mencionar a descodificação multinível: quando um valor é codificado duas vezes por engano (um sistema mal configurado, por exemplo), obtém-se algo como %2520 em vez de %20. Ativando a opção "descodificação multinível" no separador "Descodificar", a ferramenta resolve automaticamente cada camada até chegar ao texto original, sem teres de descodificar manualmente várias vezes.
Experimenta os 6 modos — codificar, descodificar, massa, analisar query, construir query e analisar URL — tudo no teu navegador.
Experimentar a ferramenta →