Texto Original DECODE
Visualização: Olá Mundo! Este é um teste...
Texto Codificado/Decodificado ENCODE
Visualização: Ol%C3%A1%20Mundo%21%20Este%20%C3%A9%20um...
62
Caracteres de Entrada
172
Caracteres de Saída
27
Caracteres Codificados
2.77x
Taxa de Expansão
Tipo de Codificação
%
encodeURIComponent
Codifica todos os caracteres exceto: A-Z a-z 0-9 - _ . ! ~ * ' ( )
Espaço → %20, & → %26, / → %2F
🔗
encodeURI
Codifica URI completo, preservando caracteres válidos em URLs
Espaço → %20, & → %26, / → / (preservado)
🔒
Codificação Completa
Codifica TODOS os caracteres (incluindo A-Z a-z 0-9)
A → %41, a → %61, 1 → %31
⚙️
Personalizado
Codifica apenas caracteres específicos selecionados abaixo
Selecione quais caracteres codificar
Conjuntos de Caracteres
Caractere Codificado Descrição Ação
Ações Rápidas
O Que é Codificação de URL?
🔤
Percent Encoding
Substitui caracteres não-ASCII ou reservados por % seguido de dois dígitos hexadecimais.
🌐
Para URLs
Permite que URLs contenham caracteres especiais, acentuados e espaços de forma segura.
📨
Formulários Web
Dados de formulários HTML são automaticamente codificados quando enviados via GET.
🔗
APIs e Web Services
Necessário para passar parâmetros em requisições HTTP de forma correta e segura.
Tipos de Codificação
encodeURIComponent() - (Recomendado para valores):
  • Codifica: tudo exceto: A-Z a-z 0-9 - _ . ! ~ * ' ( )
  • Uso: valores de parâmetros de query string
  • Exemplo: encodeURIComponent("olá mundo!")"ol%C3%A1%20mundo%21"
encodeURI() - (Para URLs completas):
  • Codifica: tudo exceto: A-Z a-z 0-9 ; , / ? : @ & = + $ - _ . ! ~ * ' ( ) #
  • Uso: URLs completas (preserva estrutura)
  • Exemplo: encodeURI("https://site.com/página")"https://site.com/p%C3%A1gina"
escape() - (Depreciado, evite usar):
  • Codifica: caracteres não-ASCII (Unicode)
  • Problema: não segue padrão RFC, formato diferente
  • Exemplo: escape("olá")"ol%u00E1" (formato antigo)
Caracteres Comuns e Suas Codificações
Caractere Codificação Descrição Uso
Espaço %20 ou + Espaço em branco Query strings
& %26 E comercial Separador de parâmetros
= %3D Igual Atribuição em queries
? %3F Interrogação Início de query string
# %23 Cerquilha Fragmento de URL
/ %2F Barra Separador de caminho
@ %40 Arroba Usuário em URLs
á (a agudo) %C3%A1 A com acento agudo Texto em português
ç %C3%A7 C cedilha Texto em português/francês
Casos de Uso Práticos
1. Query Strings em URLs:
Original: https://site.com/search?q=preço café&sort=mais novo
Codificado: https://site.com/search?q=pre%C3%A7o%20caf%C3%A9&sort=mais%20novo
2. Parâmetros em APIs REST:
GET /api/products?category=eletrônicos&name=TV 4K Samsung
GET /api/products?category=eletr%C3%B4nicos&name=TV%204K%20Samsung
3. Arquivos com caracteres especiais:
/documents/relatório_final.pdf
/documents/relat%C3%B3rio_final.pdf
4. E-mails em links "mailto":
mailto:joão@empresa.com?subject=Orçamento&body=Olá, gostaria de um orçamento.
mailto:jo%C3%A3o@empresa.com?subject=Or%C3%A7amento&body=Ol%C3%A1%2C%20gostaria%20de%20um%20or%C3%A7amento.
Melhores Práticas
O que codificar sempre:
  • Valores de parâmetros em query strings
  • Texto com acentos ou caracteres não-ASCII
  • Espaços em branco
  • Caracteres reservados (&, ?, =, #, etc.) quando usados como dados
O que NÃO codificar:
  • A estrutura da URL (http://, :, //)
  • Delimitadores quando usados como delimitadores (?, &, = em query strings)
  • O sinal de + para espaços (use %20 em vez de + para maior compatibilidade)
Dicas importantes:
  • Use encodeURIComponent() para valores, encodeURI() para URLs completas
  • Nunca use a função escape() - ela é obsoleta e produz resultados diferentes
  • Decodifique apenas uma vez - decodificação múltipla pode causar erros
  • Teste sempre com URLs complexas antes de usar em produção
  • Considere usar decodeURIComponent() para maior segurança ao decodificar
Problemas Comuns e Soluções
1. Codificação Dupla:
Problema: Espaço → %20 → %2520 (codificado duas vezes)
Solução: Verifique se o texto já está codificado antes de codificar novamente
2. Decodificação Parcial:
Problema: Alguns caracteres ficam codificados, outros não
Solução: Use decodeURIComponent() para decodificar tudo de uma vez
3. Caracteres Unicode:
Problema: Emojis e caracteres especiais não aparecem corretamente
Solução: Use UTF-8 encoding: 😊 → %F0%9F%98%8A
4. URL Quebrada:
Problema: URL não funciona após codificação
Solução: Codifique apenas os valores, não a estrutura completa da URL