[ publicidade ]

URL Encoder / Decoder e Query String Parser

Aplique percent-encoding em parâmetros, decodifique URLs ilegíveis e veja protocolo, host, caminho e cada parâmetro da query string separadamente.

Entrada

Resultado

https%3A%2F%2Fexample.com%2Fbusca%3Fq%3Dferramentas%20dev%26lang%3Dpt-BR%26tags%3Djson%2Cjwt%23topo

Análise da URL

protocolo
https:
host
example.com
caminho
/busca
hash
#topo
origem
https://example.com
ParâmetroValor decodificado
qferramentas dev
langpt-BR
tagsjson,jwt

Usar via API

Aplica ou reverte percent-encoding.

POSThttps://enhanced.dev.br/api/v1/encoding/url
Parâmetros do corpo JSON
Corpo (JSON)TipoDescrição
text *stringTexto ou URL.
mode"component" | "uri" | "decode"encodeURIComponent, encodeURI ou decodificação. Padrão: "component".

Exemplo de requisição

curl -X POST "https://enhanced.dev.br/api/v1/encoding/url" \
    -H "Content-Type: application/json" \
    -d '{"text":"busca por ferramentas & dev","mode":"component"}'

Resposta

{
  "ok": true,
  "data": {
    "mode": "component",
    "output": "busca%20por%20ferramentas%20%26%20dev"
  },
  "meta": {
    "version": "v1"
  }
}
  • Erros retornam { ok: false, error: { code, message } } com status HTTP 4xx/5xx.
  • Gratuita e sem chave de API. Limite de 120 requisições por minuto por IP.
  • CORS liberado: pode ser chamada direto do navegador em qualquer domínio.
[ publicidade ]

Como usar

  1. Cole uma URL ou um trecho de texto no campo de entrada.
  2. Escolha encodeURIComponent para valores de parâmetros, encodeURI para URLs completas ou Decodificar para reverter.
  3. Confira a análise da URL abaixo: componentes e parâmetros já decodificados.
  4. Copie o resultado com um clique.

Casos de uso

  • Montar links com parâmetros que contêm espaços, acentos, & ou =.
  • Ler URLs de redirecionamento e callbacks OAuth com parâmetros aninhados.
  • Depurar UTM e parâmetros de rastreamento em campanhas.
  • Verificar como um formulário serializou os campos enviados.

Conceitos técnicos

encodeURIComponent versus encodeURI

encodeURIComponent escapa todos os caracteres reservados (; , / ? : @ & = + $ #), sendo o correto para valores individuais de parâmetros. encodeURI preserva esses caracteres porque assume que você está codificando uma URL completa e só escapa o que é ilegal nela, como espaços e acentos.

Percent-encoding

Cada byte fora do conjunto permitido é representado como % seguido de dois dígitos hexadecimais. Caracteres não ASCII são convertidos para UTF-8 antes, por isso um ç vira %C3%A7 (dois bytes).

O sinal de + em query strings

No formato application/x-www-form-urlencoded, usado por formulários HTML, o espaço é codificado como +. O decodificador desta página trata + como espaço, compatível com URLSearchParams.

Perguntas frequentes

Por que recebo 'URI malformed' ao decodificar?

A entrada contém um % que não é seguido de dois dígitos hexadecimais válidos, ou uma sequência que não forma UTF-8 válido, como %E0%A4 incompleto.

Devo codificar a URL inteira com encodeURIComponent?

Não. Isso escaparia :// e /, quebrando a URL. Codifique apenas os valores dos parâmetros com encodeURIComponent.

Os parâmetros repetidos aparecem?

Sim. Cada ocorrência de uma chave repetida, como tag=a&tag=b, aparece em uma linha própria na tabela.

Ferramentas relacionadas