Codificador e decodificador de URL - URLs e consultas
Codifique texto para URLs e strings de consulta ou transforme uma URL codificada em texto legível, tudo no navegador.
Escolha um modo, cole o texto e clique em Converter. Codificar componente serve para valores de consulta, Codificar URL completa mantém um endereço válido e Decodificar desfaz a codificação.
Codificador e decodificador de URL - URLs e consultas
Codifique texto para URLs e strings de consulta ou transforme uma URL codificada em texto legível, tudo no navegador.
Codifica todos os caracteres reservados, incluindo & = ? / e #. Use para um único valor de consulta ou segmento de caminho.
Como funciona: caracteres fora do conjunto não reservado são substituídos por bytes UTF-8 escritos como pares hexadecimais %XX. São usadas encodeURIComponent, encodeURI e decodeURIComponent.
Sobre o codificador e decodificador de URL
URLs só podem transportar com segurança um conjunto limitado de caracteres. A RFC 3986 define letras, números e - _ . ~ como não reservados, enquanto ? & = / e # são reservados e têm significado estrutural. Todo o resto, de um espaço a uma letra acentuada ou caractere CJK, precisa ser codificado em porcentagem: o caractere vira bytes UTF-8 e cada byte é escrito com % e dois dígitos hexadecimais. Esta ferramenta faz a conversão instantaneamente no navegador, sem enviar o texto a um servidor.
Ela oferece três modos porque o JavaScript distingue duas tarefas. Codificar componente usa encodeURIComponent e escapa cada caractere reservado, sendo ideal para termos de busca, destinos de redirecionamento, tokens e valores após um sinal de igual. Se o valor contiver & ou =, codificá-los evita que o parâmetro seja dividido.
Codificar URL completa usa encodeURI para um endereço já estruturado. Escapa espaços, aspas, sinais de menor e maior e caracteres não ASCII, mas deixa : / ? & = # intactos para preservar esquema, host, caminho e consulta. Codificar a URL inteira como componente quebraria sua estrutura.
Decodificar usa decodeURIComponent para reverter o processo: %20 vira espaço, %26 vira e comercial e %C3%BC vira ü. É útil para ler links de rastreamento, verificar redirecionamentos OAuth e depurar formulários. Um % sem dois dígitos hexadecimais válidos gera um erro claro.
Use para preparar parâmetros de API, corrigir links com espaços, inserir URLs em outras URLs e analisar cadeias de redirecionamento. Codificação percentual é sintaxe de transporte, não segurança: é facilmente reversível. Não a trate como ocultação e valide sempre a entrada decodificada no servidor.
Exemplos de codificação de URL
Veja como os três modos tratam caracteres reservados, espaços e texto não ASCII.
| Entrada | Saída | Observação |
|---|---|---|
| price=1+2 (Codificar componente) | price%3D1%2B2 | = e + são reservados em consultas e viram %3D e %2B. |
| https://example.com/my files/report 2024.pdf (URL completa) | https://example.com/my%20files/report%202024.pdf | Espaços viram %20, enquanto esquema e barras permanecem intactos. |
| na%C3%AFve (Decodificar) | naïve | A sequência UTF-8 de dois bytes %C3%AF volta a ser a letra ï. |
| 50% off (Codificar componente) | 50%25%20off | O sinal de porcentagem literal deve virar %25 para não ser interpretado errado. |
Como codificar ou decodificar uma URL
- Escolha um modo: componente para um valor, URL completa para um endereço ou Decodificar para reverter.
- Cole o texto ou URL na caixa Entrada.
- Clique em Converter; o resultado aparece imediatamente na caixa Saída.
- Copie a saída ou clique em Limpar para começar novamente.
FAQ do codificador e decodificador de URL
Qual é a diferença entre encodeURIComponent e encodeURI?
encodeURIComponent escapa todos os reservados, incluindo / ? & = e #, para valores individuais. encodeURI mantém os caracteres estruturais e é usado em uma URL completa. A ferramenta os oferece como componente e URL completa.
Por que um espaço vira %20, e não +?
%20 é a codificação padrão de espaço em URLs. + vem do formato antigo application/x-www-form-urlencoded usado por formulários e só vale na consulta. Esta ferramenta sempre gera %20; ao decodificar, + continua sendo mais.
Por que ocorre um erro ao decodificar?
decodeURIComponent falha quando % não é seguido por dois dígitos hexadecimais válidos, como em um percentual literal ou sequência cortada. Confirme que a entrada está completa e codificada.
Como acentos, CJK e emojis são codificados?
O caractere é convertido primeiro em bytes UTF-8 e cada byte é escrito como %XX. Letras acentuadas geralmente usam dois pares e emojis quatro; a decodificação restaura o caractere exatamente.
Devo codificar uma URL inteira como componente?
Não. Isso escaparia os dois-pontos, barras e ponto de interrogação que estruturam o endereço. Use URL completa para o endereço e componente apenas para valores individuais.
O que colo é enviado a um servidor?
Não. A conversão roda inteiramente no navegador com encodeURIComponent, encodeURI e decodeURIComponent; tokens, IDs de sessão e caminhos privados não saem do dispositivo.