O que faz
A codificação de URL, também chamada de percent-encoding, substitui caracteres que não são permitidos ou que têm significado especial em uma URL por um % seguido de dois dígitos hexadecimais. Um espaço vira %20, um E comercial vira %26, e textos não ASCII como 中文 são primeiro convertidos em bytes UTF-8 e depois cada byte é escrito como %XX.
Esta ferramenta codifica texto para você colocá-lo com segurança em uma query string, em um segmento de caminho ou em uma requisição de API, e decodifica strings com percent-encoding copiadas de logs, da barra de endereços do navegador ou de traces HTTP de volta para texto legível.
Como usar
- Cole um texto ou uma URL na caixa Entrada, ou clique em Exemplo.
- Escolha Codificar ou Decodificar.
- Ao codificar, escolha Componente para codificar um único valor (por exemplo, um termo de busca) ou URL completa para manter
:,/,?,&e=intactos. - Ative Espaço como + para dados de formulário HTML e Cada linha separadamente para processar uma lista de valores de uma vez.
- Copie ou baixe o resultado. Se a decodificação falhar, o erro informa a posição da sequência de escape quebrada.
Exemplo
Codificar o termo de busca hello world & more como componente gera:
hello%20world%20%26%20more
Decodificar q=%E4%BD%A0%E5%A5%BD gera q=你好.
Quando usar cada um
- Montando uma query string à mão: codifique cada valor como componente e depois junte-os com
&e=. - Limpando um link completo que contém espaços ou caracteres chineses: use URL completa para que a estrutura do link seja preservada.
- Lendo logs de servidor: decodifique com Espaço como + ativado, porque muitos servidores registram dados de formulário nesse formato.
Perguntas frequentes
› Qual a diferença entre "Componente" e "URL completa"?
Componente codifica todos os caracteres reservados, incluindo / ? & = e #, então o resultado é seguro dentro de um único parâmetro de query ou segmento de caminho. Corresponde ao encodeURIComponent do JavaScript. URL completa mantém esses caracteres para que o endereço continue funcionando como link, correspondendo ao encodeURI.
› Espaços devem virar %20 ou +?
Use %20 para caminhos e para a maioria das APIs. Use + apenas para dados de formulário HTML (application/x-www-form-urlencoded), que é o que os navegadores enviam quando um formulário é submetido. Ative "Espaço como +" nesse caso.
› Por que recebo "not valid UTF-8" ao decodificar?
Os bytes %XX não formam um caractere UTF-8 completo, geralmente porque o texto foi cortado no meio de um caractere de vários bytes ou foi codificado com um charset legado, como GBK ou Latin-1.
› Meus dados são enviados para um servidor?
Não. A codificação e a decodificação rodam inteiramente no seu navegador.