URL Encoder

Codificador / Decodificador de URL

Codifique qualquer texto em uma string segura para URL com percent-encoding, ou decodifique uma URL codificada de volta para texto puro. Pré-visualização ao vivo, compatível com UTF-8 e executado inteiramente no seu navegador.

Componente (encodeURIComponent) escapa tudo que não seja um caractere não reservado — o mais seguro para valores de query string, segmentos de caminho ou qualquer campo isolado. URI (encodeURI) preserva os caracteres da estrutura da URL (:/?#=&) — use-o em uma URL inteira. Formulário (application/x-www-form-urlencoded) é o Componente + espaços viram '+' — o que os formulários HTML usam.

A RFC 3986 define um conjunto de caracteres "não reservados" que não precisam de codificação: A-Z a-z 0-9 - _. ~. Qualquer outro recebe percent-encoding. encodeURIComponent codifica adicionalmente :/?#&= que encodeURI deixa intacto. A diferença importa quando você está codificando um valor de query versus uma URL inteira.

Texto puro

0 caracteres

Saída codificada

0 caracteres

Por que o iKit URL Encoder

Rápido, preciso e somente no navegador — feito para desenvolvedores, redatores e qualquer pessoa depurando uma URL.

Três modos de codificação

Escolha entre Componente, URI completa ou Formulário, dependendo do que está codificando — valores de query string, uma URL inteira ou um payload de formulário HTML.

Privacidade por padrão

Cada codificação e decodificação acontece no seu navegador usando JavaScript nativo. Seu texto e suas URLs nunca saem do seu dispositivo.

Pré-visualização ao vivo

A saída é atualizada a cada tecla pressionada — sem botão "Codificar" para clicar, sem ida e volta ao servidor.

Compatível com UTF-8

Emojis, caracteres CJK, latinos acentuados e cirílicos passam corretamente por encodeURIComponent e voltam intactos.

Tratamento de + estilo formulário

Ao decodificar, opcionalmente trate '+' como espaço — a convenção que formulários HTML usam em application/x-www-form-urlencoded.

Processamento de arquivos em lote

Arraste um arquivo.txt,.csv ou.json para codificá-lo ou decodificá-lo em uma única etapa. A saída é baixada como um.txt limpo.

Como a codificação de URL realmente funciona

Três APIs nativas do navegador, três modos, todos rodando na página que você está lendo.

  1. 1

    Você digita no editor

    A cada tecla pressionada, a string de entrada é passada para uma pequena função JavaScript. Não há debounce, nem chamada de API, nem fetch — a função é executada de forma síncrona na sua aba do navegador.

  2. 2

    Escolha o modo

    Componente chama encodeURIComponent — escapa tudo que não seja A-Z a-z 0-9 - _. ~. URI chama encodeURI — preserva :/?#=& para que uma URL completa permaneça válida. Formulário usa encodeURIComponent e substitui espaço por + conforme application/x-www-form-urlencoded.

  3. 3

    UTF-8 acontece automaticamente

    Tanto encodeURIComponent quanto encodeURI convertem internamente a string para bytes UTF-8 antes de aplicar percent-encoding em cada byte não seguro. Isso significa %E4%B8%AD para o caractere chinês 中 — exatamente o que a RFC 3986 exige.

  4. 4

    A saída aparece ao vivo

    O resultado é definido como o valor da saída somente leitura. Clique em Copiar para colocá-lo na área de transferência via navigator.clipboard.writeText, ou em Baixar para salvá-lo como um .txt via Blob URL — ambos permanecem no seu navegador.

Casos de uso comuns

Situações reais em que o modo de codificação correto evita bugs.

Construindo valores de query string

Qualquer entrada de usuário que você coloque em ?q=... deve ser codificada com o modo Componente. O modo URI deixaria = e & intactos, quebrando sua URL quando o valor os contiver.

Compartilhando uma URL longa em um chat

Alguns aplicativos de chat e PDFs corrompem links que contêm espaços brutos ou caracteres não ASCII. Passe a URL pelo modo URI para torná-la segura para copiar e colar em qualquer lugar.

Depurando um backend que retorna 400

Quando sua API rejeita uma requisição, cole a URL no modo Decodificar para ver o que o servidor realmente recebeu. Valores codificados duas vezes (onde o próprio % foi codificado como %25) aparecem imediatamente.

Round-trip de dados de formulário

Ao depurar corpos de POST em application/x-www-form-urlencoded, decodifique com a opção "+ como espaço" ativada. É a convenção que os navegadores usam, e esquecê-la é a causa nº 1 dos bugs de "por que meu nome de usuário aparece com sinais de mais".

Por que codificar localmente importa

URLs que você codifica frequentemente contêm e-mails reais de clientes, IDs ou tokens de sessão — exatamente o tipo de dado que você não quer colar na ferramenta de servidor de um estranho. O iKit URL Encoder é executado como JavaScript já carregado no seu navegador, então a entrada nunca sai da sua aba.

  • Sem fetch, XHR ou beacon durante a codificação ou decodificação.
  • Funciona offline depois que a página é carregada.
  • Sem logs, sem limite de taxa, sem cadastro, sem cota diária.

Guias relacionados

Tutoriais detalhados e comparações de ferramentas do blog do iKit.

Perguntas frequentes

Qual é a diferença entre os modos Componente, URI e Formulário?

Componente (encodeURIComponent) escapa tudo que não seja um caractere não reservado — o mais seguro para valores de query string, segmentos de caminho ou qualquer campo isolado. URI (encodeURI) preserva os caracteres da estrutura da URL (:/?#=&) — use-o em uma URL inteira. Formulário (application/x-www-form-urlencoded) é o Componente + espaços viram '+' — o que os formulários HTML usam.

Por que alguns caracteres não são codificados?

A RFC 3986 define um conjunto de caracteres "não reservados" que não precisam de codificação: A-Z a-z 0-9 - _. ~. Qualquer outro recebe percent-encoding. encodeURIComponent codifica adicionalmente :/?#&= que encodeURI deixa intacto. A diferença importa quando você está codificando um valor de query versus uma URL inteira.

Por que meu texto decodificado parece errado?

Três causas comuns: (1) o original foi codificado como Formulário, então '+' deve ser tratado como espaço — ative essa opção. (2) Codificado em duplicidade — a entrada foi codificada duas vezes; decodifique novamente. (3) Sequência de percent inválida — um % solto não seguido por dois dígitos hexadecimais. Verifique a mensagem de erro para a posição exata do byte.

A URL codificada é exatamente igual à do encodeURIComponent do JavaScript?

Sim para o modo Componente — chamamos encodeURIComponent diretamente. O modo Formulário adiciona os ajustes padrão de codificação de formulário (! ' * viram %21 %27 %28 %29 %2A) conforme RFC 3986 + WHATWG. O modo URI chama encodeURI, que é o que a maioria das linguagens entende por 'percent-encoding de uma URL'.

Minhas URLs são enviadas para algum lugar?

Não. A ferramenta inteira é JavaScript dentro desta página — codificação e decodificação acontecem no seu navegador. Você pode verificar abrindo DevTools → Network e observando: nenhuma requisição é enviada durante operações de codificação ou decodificação.