Codificar e decodificar URL

Codifique um texto para que ele caiba em um endereço da web, ou decodifique um link codificado para ler o seu texto e os seus parâmetros de consulta. Nada do que você cola sai do seu navegador.

Gratuita Funciona no seu navegador Verificada em terça-feira, 10 de novembro de 2026

O texto a codificar, ou o texto ou link codificado a decodificar.

Ação
Escopo

Use um valor para um valor de consulta ou uma parte do caminho. Use uma URL inteira para manter os caracteres : / ? & e =.

Marque para uma string de consulta escrita por um formulário HTML: um + é lido como espaço, e um espaço é escrito como +.

Resultado

Resultado
Parâmetros da consulta

Esta ferramenta funciona no seu navegador. O que você digita não é enviado para nós.

Como usar

  1. Cole o texto ou o link em Texto ou URL.
  2. Escolha Codificar ou Decodificar em Ação.
  3. Para um valor só, como uma palavra de busca, mantenha Escopo em Um valor. Para um link inteiro, escolha Uma URL inteira.
  4. Leia o Resultado, e a tabela Parâmetros da consulta quando o texto é um link com consulta.

O que o percent-encoding faz

Um endereço da web pode conter só um conjunto pequeno de caracteres. Todos os outros são escritos como um sinal de % e dois dígitos hexadecimais para cada byte da sua forma UTF-8. A letra ç, portanto, vira %C3%A7, e um espaço vira %20. As regras estão na RFC 3986, seção 2.1.

ç  →  bytes UTF-8 C3 A7  →  %C3%A7
  • Codificar com Um valor mantém só as letras de A a Z e de a a z, os dígitos de 0 a 9 e - _ . ! ~ * ' ( ) como estão.
  • Decodificar transforma cada %XX válido de volta no seu byte, e os bytes de volta nas letras que formam.

Um valor ou uma URL inteira

Um valor codifica também os separadores (: / ? # & = e +), então um valor de consulta não quebra a estrutura do endereço. Uma URL inteira deixa esses separadores como estão, então o link mantém a sua forma. Ao decodificar uma URL inteira, um escape que representa um separador, como %2F, continua codificado, para que o link ainda signifique a mesma coisa.

Codificação de formulário e o sinal +

Formulários HTML escrevem um espaço como + e um sinal de mais como %2B. Em uma string de consulta escrita por um formulário, um + significa, portanto, um espaço. A opção Codificação de formulário lê e escreve essa regra. Quando ela está desligada, um + continua sendo um sinal de mais, como diz a RFC 3986.

O que a decodificação recusa

  • Um sinal de % que não é seguido de dois dígitos hexadecimais, como o fim de %E0%A4%A.
  • Escapes que não formam UTF-8 válido, como um byte isolado %FF.
  • Um caractere quebrado, como metade de um emoji, que não pode ser codificado.

Exemplo resolvido: um link de busca

Codificar o valor Ankara & İzmir? com Um valor dá Ankara%20%26%20%C4%B0zmir%3F. O espaço, o e comercial, o İ maiúsculo (dois bytes em UTF-8) e o ponto de interrogação são todos codificados.

Decodificar https://example.com/ara?q=%C3%A7ay+kahve&page=2 com Uma URL inteira e Codificação de formulário marcada dá https://example.com/ara?q=çay kahve&page=2. A consulta tem dois parâmetros: q é çay kahve e page é 2.

Entrada Resultado
Ankara & İzmir? (Um valor, codificar) Ankara%20%26%20%C4%B0zmir%3F
https://example.com/ara?q=%C3%A7ay+kahve&page=2 (decodificar) https://example.com/ara?q=çay kahve&page=2

Perguntas frequentes

Qual é a diferença entre encodeURI e encodeURIComponent?

encodeURIComponent codifica todos os separadores, então serve para um valor de uma consulta. encodeURI mantém os caracteres que dão estrutura a uma URL, como : / ? # & e =, então serve para um link inteiro. Um valor é a primeira opção, e Uma URL inteira, a segunda.

Por que um espaço vira %20 em um lugar e + em outro?

%20 é o escape padrão de um espaço e vale em qualquer parte de uma URL. Um + significa espaço só na codificação de formulário, em strings de consulta escritas por formulários HTML. Marque Codificação de formulário quando o link vier de um formulário.

Por que %E0%A4%A é recusado?

O escape %E0 começa uma letra de três bytes, mas o texto termina depois de %A e o escape não está completo. Todo sinal de % precisa de dois dígitos hexadecimais, e cada byte tem de pertencer a um caractere UTF-8 completo.

Meu link é enviado para algum servidor?

Não. O seu navegador faz a codificação e a decodificação, então links que levam tokens ou dados privados ficam no seu aparelho.

Por que um sinal de mais continua nos parâmetros decodificados?

Com a Codificação de formulário desligada, um + continua sendo um sinal de mais, como a RFC 3986 o define. Muitos formulários web escrevem espaços como +, então marque a opção para ler esses links como o formulário pretendia.

Fontes

Números e texto verificados pela última vez em terça-feira, 10 de novembro de 2026.

Usamos cookies necessários para o site funcionar. Com o seu consentimento, o Google também usa cookies de publicidade para mostrar anúncios personalizados. Se você recusá-los, continuará vendo anúncios, mas eles não serão personalizados.