nearnull

Codificador / Decodificador de URL

Codifique ou decodifique texto com percent-encoding para uso seguro em URLs e query strings. Funciona totalmente no seu navegador: nada é enviado a nenhum servidor.

Codifica todo caractere que não é seguro em um único valor de query string — use para um valor que você vai inserir em uma URL (query param, segmento de path).

Resultado
O resultado vai aparecer aqui

O que é codificação de URL?

A codificação de URL (percent-encoding) substitui caracteres que não são seguros dentro de uma URL — espaços, `&`, `=`, `#`, letras não-ASCII, e mais — por um `%` seguido do valor hex do seu byte, para que a string possa viajar dentro de uma URL sem ser confundida com parte de sua estrutura. Esta ferramenta oferece dois modos: modo componente (`encodeURIComponent`), que escapa tudo que é inseguro em um único valor como um query parameter, e modo URI completa (`encodeURI`), que deixa intactos caracteres estruturais como `:`, `/`, `?`, `#` e `&` porque se espera que apareçam em uma URL completa.

Exemplos

Codifique ou decodifique percent-encoding de forma nativa na maioria das linguagens:

JavaScript
encodeURIComponent(str)
decodeURIComponent(str)
Python
from urllib.parse import quote, unquote
quote(s)
unquote(s)
Java
URLEncoder.encode(s, "UTF-8")
URLDecoder.decode(s, "UTF-8")
C#
Uri.EscapeDataString(s)
Uri.UnescapeDataString(s)
Go
import "net/url"

url.QueryEscape(s)
url.QueryUnescape(s)
PHP
rawurlencode($s)
rawurldecode($s)
Ruby
require 'erb'
ERB::Util.url_encode(s)
CGI.unescape(s)

Casos de uso

Montar parâmetros de query string

Codifique um valor (termo de busca, email, texto livre) antes de anexá-lo a uma URL como `?q=<valor>`, assim caracteres como `&` ou `#` no valor não quebram a query string.

Depurar um link mal formado

Decodifique uma URL recebida para ver sua forma real e legível — útil quando um redirect ou payload de webhook tem caracteres percent-encoded corrompidos.

Trabalhar com URLs de requisição de uma API

Muitas APIs exigem que segmentos de path ou parâmetros estejam percent-encoded — codifique IDs ou valores de filtro aqui antes de montar manualmente uma URL de requisição.

Ler URLs de tracking e redirects

Links de marketing e redirects de OAuth costumam aninhar uma URL completa dentro de um query parameter — decodifique para ver o destino real antes de clicar.

Perguntas frequentes

Qual a diferença entre os dois modos?
O modo componente (encodeURIComponent) escapa todo caractere que não é seguro em um único valor — use para um query parameter ou segmento de path. O modo URI completa (encodeURI) é para codificar uma URL inteira de uma vez, então deixa intactos os caracteres estruturais (: / ? # & =) porque se espera que separem as partes da URL.
Por que a decodificação às vezes falha?
Um `%` no input não está seguido de dois dígitos hex válidos, então não é uma sequência percent-encoded bem formada. Isso normalmente significa que o texto na verdade não estava URL-encoded, ou foi codificado duas vezes e também precisa ser decodificado duas vezes.
Devo codificar uma URL completa ou só uma parte?
Só codifique as partes que vêm de input do usuário ou texto livre — como o valor de um query parameter. Codificar uma URL inteira em modo componente também escaparia seus `:`, `/` e `?`, quebrando-a; use o modo URI completa se realmente precisar codificar uma URL inteira.
Meus dados são enviados a algum servidor?
Não. Codificar e decodificar acontece inteiramente no seu navegador com JavaScript puro. Nada do que você digita aqui é transmitido ou armazenado em nenhum lugar.
Lida com caracteres não-ASCII como emojis ou acentos?
Sim — ambos os modos codificam qualquer caractere fora do pequeno conjunto de caracteres ASCII seguros para URL, incluindo letras acentuadas, emojis e outros textos Unicode, escapando seus bytes UTF-8.