Codificador / Decodificador de URL
Codifique ou decodifique URLs e componentes de URL. Analise URLs em suas partes. Roda no seu dispositivo.
encodeURIComponent · codifica tudo, exceto letras, dígitos e - _ . ! ~ * ' ( )
A codificação de URL (também chamada de percent-encoding) converte caracteres que não são permitidos ou que têm significado especial em uma URL para uma representação segura, especificamente um sinal de porcentagem seguido de dois dígitos hexadecimais. Um espaço vira %20, um & comercial vira %26, e assim por diante. Esta ferramenta codifica e decodifica textos em três modos: Componente de URL (encodeURIComponent), URL Completa (encodeURI) e Dados de Formulário (espaço como sinal de mais). Ela também analisa URLs completas e separa cada parte usando a API URL nativa do navegador.
Como usar
- Escolha Codificar ou Decodificar. Codificar converte texto simples para o formato percent-encoded. Decodificar converte um texto percent-encoded de volta para texto simples. As duas direções funcionam ao vivo: editar um lado atualiza o outro.
- Escolha o tipo de codificação. Componente de URL é o padrão e a escolha correta para codificar valores individuais, como valores de parâmetros de consulta ou segmentos de caminho. URL Completa preserva a estrutura de uma URL inteira. Dados de Formulário usa
+para espaços em vez de%20, seguindo o padrão de envio de formulários HTML por POST. - Cole o seu texto. A saída é atualizada automaticamente enquanto você digita. As duas caixas de texto são editáveis. Você pode digitar em qualquer um dos lados e o outro se atualiza na hora.
- Analise uma URL (opcional). Com uma URL completa na entrada, clique em Analisar URL para separá-la em protocolo, domínio, porta, caminho, parâmetros de consulta e fragmento hash. Cada valor de parâmetro aparece decodificado para facilitar a leitura.
Dicas para um resultado melhor
- Use Componente de URL para valores de parâmetros. Se você está montando uma URL manualmente e precisa codificar o valor de um parâmetro de consulta, Componente de URL é o modo correto. Ele codifica os caracteres
&e=que separam os parâmetros, então o valor codificado pode ser incluído com segurança sem quebrar a estrutura da URL. - Use URL Completa só para URLs inteiras. O
encodeURIdeixa de propósito caracteres como?,&,=,#e/sem codificar, porque eles têm função estrutural na URL. Se você codificar o valor de um parâmetro no modo URL Completa, esses caracteres passam sem codificação e quebram a sua URL. - Dados de Formulário é para corpos de POST, não para URLs. Formulários HTML com
method="POST"e codificaçãoapplication/x-www-form-urlencodedusam+para representar espaços. Isso é diferente da codificação de URL, em que espaços viram%20. Se você está decodificando o corpo de um envio de formulário, use o modo Dados de Formulário. - Use o analisador para depurar query strings. Colar uma URL complexa com muitos parâmetros no analisador e ver a tabela de chaves e valores decodificados é mais rápido do que decodificar cada parâmetro manualmente.
Por que usar o PixMidas
- 100% privado. Toda a codificação e análise usa APIs nativas de JavaScript no seu dispositivo. Nada é enviado para nenhum servidor.
- Três modos de codificação. Componente de URL, URL Completa e Dados de Formulário cobrem todos os cenários comuns de percent-encoding em uma ferramenta só.
- Analisador de URL integrado. O analisador separa qualquer URL válida em seus componentes estruturais e decodifica os valores dos parâmetros de consulta, útil para depurar chamadas de API, redirecionamentos OAuth e query strings complexas.
- Edição nos dois sentidos. As duas caixas de texto são ao vivo. Você pode digitar ou colar em qualquer lado e o outro se atualiza na hora.
- Sem conta e sem cadastro. Grátis e instantâneo. A codificação roda localmente no seu dispositivo.
Perguntas frequentes
O que é codificação de URL e quando eu preciso dela?
A codificação de URL converte caracteres que não são seguros em uma URL para uma sequência de porcentagem seguida de dois dígitos hexadecimais. Caracteres fora do conjunto não reservado ASCII (letras, dígitos, - _ . ~) precisam ser codificados quando aparecem em uma URL. Você precisa da codificação sempre que inclui dados fornecidos pelo usuário em uma URL, por exemplo um termo de busca, um caminho de arquivo ou um endereço de e-mail como valor de parâmetro. Esquecer de codificar caracteres especiais como &, = ou + nos valores quebra a estrutura da URL e produz resultados errados no servidor que a recebe.
Qual é a diferença entre encodeURIComponent e encodeURI?
O encodeURIComponent codifica tudo, exceto os 71 caracteres do conjunto não reservado: letras, dígitos e - _ . ! ~ * ' ( ). É a função correta para codificar componentes individuais de URL, como valores de parâmetros de consulta, segmentos de caminho e identificadores de fragmento. O encodeURI deixa sem codificar, além desses, os seguintes caracteres: ; , / ? : @ & = + $ #. São os caracteres que formam a estrutura da URL. O encodeURI só é apropriado para codificar uma URL completa que já está corretamente formada, quando você quer escapar apenas os caracteres que quebrariam a interpretação da URL por completo.
O que é a codificação de Dados de Formulário e qual é a diferença?
Formulários HTML com method="POST" e o tipo de conteúdo padrão application/x-www-form-urlencoded codificam o corpo do formulário com uma versão modificada da codificação de URL: espaços viram + em vez de %20, e todo o resto é codificado da mesma forma que o encodeURIComponent. É esse o formato que você vê em corpos de requisição POST ao inspecionar envios de formulário nas ferramentas de desenvolvedor do navegador. Ao decodificar um texto nesse formato, os sinais de mais precisam ser convertidos de volta em espaços antes de aplicar o decodeURIComponent.
Quais caracteres realmente precisam ser codificados?
Em uma URL, qualquer caractere fora do conjunto não reservado ASCII precisa ser codificado. Os caracteres não reservados são: A-Z, a-z, 0-9, -, _, . e ~. Todos os outros, incluindo espaços, caracteres unicode, pontuação e caracteres como &, =, ?, # e /, precisam ser codificados quando aparecem como valores de dados (e não como caracteres estruturais da URL). Caracteres fora do ASCII, como letras acentuadas e emojis, são primeiro convertidos em bytes UTF-8, e cada byte é codificado separadamente.
Dá para codificar uma URL duas vezes sem querer?
Sim. Se você codificar um texto que já contém sequências percent-encoded, os próprios caracteres % são codificados para %25. Por exemplo, %20 vira %2520. É um bug comum ao codificar uma URL que já estava parcialmente codificada, ou ao codificar algo copiado da barra de endereços do navegador (que em alguns navegadores já mostra caracteres codificados). Se você vê sequências %25 em uma URL codificada, a entrada provavelmente já estava codificada. Decodifique uma vez primeiro para obter o texto limpo e depois codifique de novo se precisar.
Por que o analisador mostra erro para a minha URL?
O analisador usa o construtor URL nativo do navegador, que segue a especificação WHATWG URL. Ele exige uma URL totalmente qualificada, com esquema (por exemplo https:// ou http://). URLs relativas como /caminho/da/pagina, domínios soltos como exemplo.com e URLs malformadas sem esquema falham na análise. Adicione https:// no início para analisar um domínio ou caminho sem esquema.