Codificar / decodificar URL

Codifique ou decodifique URL com percent-encoding em UTF-8. Escolha %20 (RFC 3986) ou + (formulários) para os espaços.

Partes da URL

Parte / parâmetro Valor (decodificado) Copiar

O que é codificação de URL?

URLs só podem conter um conjunto limitado de caracteres. Caracteres não ASCII (como ç e letras acentuadas), espaços e caracteres com significado especial em URLs, como &, = e ?, precisam ser codificados antes de entrar em um parâmetro. A codificação de URL (percent-encoding) converte cada caractere em bytes UTF-8 e os escreve como % seguido de dois dígitos hexadecimais; o caractere chinês 中, por exemplo, vira %E4%B8%AD.

Como usar

  1. Clique em "Codificar" ou "Decodificar" para escolher a direção; o botão escolhido fica destacado.
  2. Digite na caixa de entrada. Com "Conversão automática" ativada, o resultado aparece assim que você para de digitar.
  3. "Usar resultado como entrada" leva o resultado para a esquerda e inverte a direção.

Espaços devem virar %20 ou +?

Exemplo

a b&c=中文 é codificado como:

a%20b%26c%3D%E4%B8%AD%E6%96%87

Qual a diferença para o encodeURIComponent do JavaScript?

Os resultados são quase iguais. Seguindo a RFC 3986, esta ferramenta também codifica os cinco caracteres !, ', (, ) e *, mantendo apenas letras, dígitos, -, _, . e ~. Isso reduz as chances de problemas em servidores diferentes.

Alcance da codificação e análise de URL

Perguntas frequentes

Posso codificar uma URL inteira?

Com o alcance padrão "Valor de parâmetro", uma URL inteira quebra, porque ://, ? e & também são codificados. Para uma URL inteira, mude "Alcance da codificação" para "URL completa", que mantém a estrutura e codifica apenas o que uma URL não aceita; use "Valor de parâmetro" para um valor isolado.

Ao decodificar aparece "String com codificação de URL inválida"

Todo % precisa ser seguido de dois dígitos hexadecimais (0–9, A–F). Se o texto só contém um sinal de porcentagem (como 100%), ele nunca foi codificado e não precisa ser decodificado.

O que significa %2520?

O texto foi codificado duas vezes: o próprio % foi codificado de novo como %25. Decodifique mais uma vez para obter o original.