O que é codificação de URL (percent-encoding)?
A codificação de URL, também conhecida como percent-encoding, é um mecanismo definido na RFC 3986 para representar caracteres especiais em uma URI. Caracteres não permitidos em uma URL — como espaços, e comerciais, pontos de interrogação e caracteres não ASCII — são substituídos por um sinal de porcentagem seguido de seu valor hexadecimal de dois dígitos (por exemplo, um espaço se torna %20). O JavaScript oferece duas funções nativas: encodeURIComponent() codifica todos os caracteres especiais, sendo ideal para valores de parâmetros de consulta, enquanto encodeURI() preserva caracteres estruturais da URL, como dois-pontos, barras, pontos de interrogação e cerquilhas, sendo ideal para codificar uma URL completa sem comprometer sua estrutura.
Como usar este codificador e decodificador de URL online gratuito
- 1Selecione o modo: 'Encode' para transformar o texto em uma string segura para URLs ou 'Decode' para converter uma string com percent-encoding de volta em texto simples.
- 2Escolha a função de codificação: alterne entre encodeURIComponent, que codifica tudo, e encodeURI, que preserva a estrutura da URL.
- 3Cole ou digite o texto no campo de entrada. O resultado é atualizado em tempo real.
- 4Clique no botão Copy para copiar a saída para a área de transferência.
Casos de uso comuns para codificação e decodificação de URLs
Criação de query strings
Codifique com segurança valores de parâmetros que contenham caracteres especiais, como &, = ou espaços, antes de adicioná-los a uma URL.
Depuração de URLs codificadas
Decodifique URLs com percent-encoding para ler os valores originais e investigar problemas de roteamento ou APIs.
Codificação de caracteres não ASCII
Converta caracteres Unicode, como chinês, árabe e emojis, em sequências com percent-encoding para uso em URLs compatíveis apenas com ASCII.
Preparação de URIs de redirecionamento para OAuth
Fluxos OAuth exigem que valores redirect_uri sejam codificados para URL quando enviados como parâmetros de consulta ao endpoint de autorização.
Criação de links mailto:
Codifique assuntos e corpos de mensagens em links mailto: para que caracteres especiais sejam exibidos corretamente nos clientes de e-mail.
Perguntas frequentes
Qual é a diferença entre encodeURI e encodeURIComponent?
encodeURI() codifica uma URI completa, mas preserva caracteres que fazem parte da sintaxe da URL, como dois-pontos, barras, pontos de interrogação, cerquilha, e comercial e sinal de igual. encodeURIComponent() codifica tudo, exceto A-Z, a-z, 0-9 e os caracteres - _ . ~, sendo adequado para valores de parâmetros de consulta nos quais esses caracteres estruturais precisam ser escapados.
Por que os espaços aparecem como %20 ou + nas URLs?
No percent-encoding padrão da RFC 3986, um espaço é codificado como %20. Em envios de formulários HTML com application/x-www-form-urlencoded, ele é codificado como +. Ambos representam um espaço, mas %20 é o padrão universal para URLs.
Codificação de URL é o mesmo que codificação de entidades HTML?
Não. A codificação de URL (percent-encoding) torna strings seguras para uso em URLs. A codificação de entidades HTML, como a entidade 'amp' para o caractere e comercial, torna strings seguras para uso em marcação HTML. Elas têm finalidades e sintaxes diferentes.
Esta ferramenta é gratuita e mantém meus dados privados?
Sim. A ferramenta é executada inteiramente no navegador com as funções nativas de codificação do JavaScript. Nenhum dado é enviado a servidores e não é necessário fazer cadastro.