Encoder / Decoder de URL
Faça percent-encoding de strings para URLs ou decodifique de volta para texto puro.
Digite uma entrada acima para ver o resultado.
O que o URL encoding faz
URLs e headers HTTP são restritos a um pequeno subconjunto do ASCII. Qualquer coisa fora desse conjunto — incluindo espaços, letras acentuadas, emoji e vários caracteres de pontuação reservados — precisa ser percent-encoded: substituída por % seguido de dois dígitos hex por byte. café vira caf%C3%A9 (UTF-8). A decodificação reverte isso.
Quando usar cada scope
- Component — escolha esta opção para valores individuais que você vai inserir em uma URL: valores de query string, segmentos de path, texto de fragment, valores de header. Codifica os caracteres estruturais
/ ? # & = +para que não sejam interpretados acidentalmente como sintaxe de URL. - Full URI — escolha esta para uma URL inteira que você quer limpar. Preserva
/ ? # & = +como estrutura da URL, codificando apenas caracteres ilegais (espaços, não-ASCII, etc.).
Cuidados comuns
- Não codifique duas vezes. Codificar uma string já codificada transforma
%20em%2520. Se sua entrada já tem sequências%XX, decodifique primeiro. - Espaços nem sempre são
%20. Em corpos application/x-www-form-urlencoded, espaços são+. Esta ferramenta segue a convenção doencodeURIComponentdo JavaScript (sempre%20); a decodificação aceita os dois. - UTF-8 vs Latin-1. Browsers modernos e
encodeURIComponentsempre usam UTF-8. Alguns sistemas antigos ainda produzem percent-escapes em Latin-1 — esses não fazem round-trip corretamente aqui. - Caracteres reservados são case-insensitive no percent-escape mas case-sensitive no resultado decodificado —
%2Fe%2fambos decodificam para/, mas o case original do caractere é preservado.