Codificador / Decodificador de URL

Qualquer caractere fora de A-Z a-z 0-9 - _ . ~ deve ser escapado percentualmente quando aparece em uma URL. Perder um pode fazer com que o navegador te envie para um lugar que você não pretendia, ou uma API rejeite a chamada com um 400. Este codificador lida com URLs inteiras ou valores de parâmetro simples, alternando entre texto legível e formato seguro sem quebrar caracteres estruturais como / ou ?, a menos que você peça.

Como codificar e decodificar uma URL

  1. 1

    Cole a URL ou valor

    Insira uma URL completa, uma string de consulta ou um único parâmetro.

  2. 2

    Escolha o nível de codificação

    O modo de URL completa mantém `/ : ? #` intactos. O modo de componente escapa tudo que é reservado.

  3. 3

    Execute a conversão

    Cada caractere é codificado em UTF-8 e bytes reservados são substituídos por `%HH`.

  4. 4

    Inverta quando necessário

    A mesma ferramenta decodifica a entrada escapada percentualmente de volta para seus caracteres originais.

Encode vs encodeComponent

Os dois modos vêm do JavaScript e mapeiam para diferentes regras do RFC 3986.

Modo Mantém intacto Use quando
URL Completa (encodeURI) : / ? # [ ] @ ! $ & ' ( ) * + , ; = Você já tem uma URL estruturada
Componente (encodeURIComponent) Apenas caracteres não reservados Você está inserindo um valor em um template

Correções típicas que esta ferramenta faz

  • Espaços dentro de um valor de consulta se tornam %20 para que o servidor receba um único parâmetro.
  • E comercial dentro de um valor se torna %26 para que não abra um novo par de consulta.
  • Sinais de mais dentro de um termo de busca se tornam %2B para que o servidor não os leia como espaços.
  • Texto não-ASCII como café se torna caf%C3%A9 (UTF-8, dois bytes).

Armadilha da codificação dupla

Se você codificar uma string já codificada, obterá um nonsense: %20 se torna %2520. Sempre decodifique primeiro quando não tiver certeza de onde a entrada veio. A ferramenta avisa quando detecta sequências percentuais na entrada antes da codificação.

Perguntas frequentes

Sim, quando você seleciona o modo de URL de formulário. O modo estrito do RFC 3986 deixa + como um mais literal porque apenas %20 é o espaço canônico em URIs.

Sim. O modo de URL completa codifica apenas os caracteres que não são válidos na estrutura URI, então uma URL correta passa sem alterações enquanto espaços e não-ASCII dentro dos valores ainda são escapados.

UTF-8, conforme o RFC 3986 e a especificação de URL do WHATWG. Codificações legadas como ISO-8859-1 não são suportadas.

Não. A codificação é executada localmente no seu navegador, nada é enviado ou armazenado.

Ferramentas relacionadas

Ferramenta disponível em outros idiomas