Pular para o conteúdo
GeraTexto
Encoding & Cripto 4.91 · 689 avaliações

URL Encoder e Decoder — escape de URL (component e URI)

Codifique e decodifique strings em URL-safe encoding (percent-encoding). Suporta modos 'component' (param) e 'uri' (URL inteira). UTF-8 completo.

Resultado

O que é URL encoding (percent encoding)

URL encoding ou percent encoding (RFC 3986) é a forma de representar caracteres reservados ou inseguros em URLs usando o formato %XX, onde XX é o byte em hexadecimal. Espaço vira %20, "?" vira %3F, "ç" vira %C3%A7 (2 bytes UTF-8), e assim por diante.

Component vs URI — qual modo usar

Modo "component" (encodeURIComponent)

Codifica tudo exceto caracteres não-reservados (A-Z, a-z, 0-9 e -_.~!*'()). Use quando o conteúdo é parte de uma URL maior — parâmetro de query individual, segmento de path. Exemplo: codificar o termo de busca antes de colar em ?q=....

Modo "uri" (encodeURI)

Preserva caracteres estruturais da URL (;,/?:@&=+$#). Use quando você tem uma URL completa que precisa ser sanitizada sem quebrar sua estrutura.

Casos de uso comuns

  • Construir links com parâmetros: buscar uma URL com query string contendo caracteres especiais.
  • Compartilhar URLs em mensagens: alguns apps quebram URLs com caracteres especiais — encode antes.
  • Debug de logs: ler %20 e %3F bagunçados como texto legível.
  • Webhooks e APIs: garantir que payloads em URL chegam intactos.

UTF-8 é tratado corretamente

Caracteres acentuados são primeiro convertidos para bytes UTF-8 e cada byte vira um par %XX. Por isso "ção" tem 6 caracteres percent-encoded (3 bytes × 2 chars hex).

Privacidade

Codificação 100% local. URLs não são acessadas, salvas nem enviadas — só transformadas no seu navegador.

Perguntas frequentes

Qual a diferença entre component e uri?

component (encodeURIComponent) escapa TODOS os caracteres reservados — use para parâmetros de query e segmentos de path individuais. uri (encodeURI) preserva caracteres estruturais (;,/?:@&=+$#) — use para URLs inteiras quando você não quer quebrar a estrutura.

Por que ' ' vira '%20'?

Espaço não é caractere válido em URL (RFC 3986). Toda URL precisa que espaços e outros caracteres especiais sejam representados como sequências percent-encoded — 32 em decimal = 20 em hex, então espaço vira %20.

Funciona com UTF-8?

Sim. Caracteres acentuados são primeiro convertidos para bytes UTF-8 e cada byte é representado como %XX. Por isso 'ç' vira '%C3%A7' (2 bytes em UTF-8).

Quando preciso decodificar?

Quando você recebe URL ou parâmetro de query e precisa exibir/processar o valor original — ler logs de acesso, debuggar formulários, entender o que o usuário enviou.

Ferramentas relacionadas