ForHosting KIT · Ferramentas para dev

Codificador de URL

hello world & café vira hello%20world%20%26%20caf%C3%A9, pronto para um link. Escolha entre codificar um valor isolado, em que & = ? / também são escapados, ou um endereço inteiro que mantém dois-pontos, barras e ponto de interrogação. A decodificação desfaz tudo. Grátis no seu navegador.

  • Grátis
  • Funciona no seu navegador
  • Sem cadastro
  • Seus dados não saem do seu aparelho
Use pelo WebAPIE-mailTelegramApp em breve
Se você digitar
Texto
hello world & café
Modo de cálculo
Encode
Você obtém
Resultado
hello%20world%20%26%20caf%C3%A9
Comprimento
31
Perfil
component
Padrao
encodeURIComponent / decodeURIComponent

O percent-encoding de URLs transforma espacos, e-comerciais, letras nao ASCII e outros caracteres reservados ou inseguros em uma forma portatil %HH para que query strings, segmentos de caminho e parametros de callback sobrevivam ao transito por navegadores, proxies e APIs. Sem ele, um termo de busca com espacos quebra uma query, um assunto de e-mail com acentos corrompe um link mailto e um nome de produto com barra parece um novo caminho. Escolha o modo componente ao codificar um unico valor de parametro, ou o modo de URI completa quando separadores estruturais como dois-pontos-barra e ponto de interrogacao precisam permanecer intactos.

Como funcionam o percent-encoding e os dois perfis de URL

O percent-encoding, definido para a web nos padroes de URI que os navegadores e a RFC 3986 seguem, substitui cada byte nao permitido em um dado contexto por um sinal de porcentagem e dois digitos hexadecimais. Para texto UTF-8, caracteres multi-byte viram varios grupos %HH em sequencia, entao café vira caf%C3%A9 e um espaco simples vira %20. Dois perfis comuns importam no dia a dia.

O perfil de componente corresponde a encodeURIComponent: ele escapa quase tudo que nao e caractere nao reservado, incluindo delimitadores reservados como e-comercial, igual, ponto de interrogacao, barra e dois-pontos. E o que voce quer quando a string e um unico valor de parametro de query ou um unico segmento de caminho que nao pode ser confundido com estrutura. O perfil de URI completa corresponde a encodeURI: ele ainda escapa espacos e nao ASCII, mas deixa a pontuacao estrutural intacta para que um endereco inteiro como https://example.com/path?

A decodificacao reverte o mapa. Antes de executar a decodificacao, esta capacidade varre a entrada atras de escapes bem formados: todo sinal de porcentagem deve ser seguido de exatamente dois digitos hex. Essa verificacao estrita e intencional; a aceitacao silenciosa esconderia erros de colagem e produziria resultados diferentes entre linguagens que discordam sobre como tratar escapes quebrados.

O que voce envia e o que recebe de volta

Envie um campo de string obrigatorio chamado text e os campos opcionais mode e component. O modo encode aplica escapes de porcentagem ao texto conforme o perfil selecionado e devolve a string transformada em result. O modo decode valida cada sequencia de porcentagem e depois reverte a codificacao, devolvendo texto UTF-8 simples em result.

Component tem padrao true para o perfil estrito de componente; defina-o como false para o perfil de URI completa que preserva os delimitadores estruturais. A resposta ecoa mode, component, o text original, result, o comprimento de result, um rotulo curto de perfil component ou uri e um rotulo standard que nomeia as funcoes nativas JavaScript correspondentes para que os clientes verifiquem qual contrato receberam. Falhas de validacao nao consomem saldo pre-pago.

Verificacoes classicas incluem codificar hello world com espaco e e-comercial no modo componente, decodificar caf%C3%A9 de volta para café, codificar uma URL completa com component false para que o esquema e os separadores de query sobrevivam, e rejeitar uma string que termina com uma porcentagem solta.

Onde o percent-encoding de URLs aparece no trabalho real

Servicos de backend que montam destinos de redirecionamento, URLs de callback OAuth e caminhos de retorno assinados precisam codificar cada valor de parametro de forma independente para que um e-comercial dentro do titulo de um produto nao invente um segundo campo de query. Aplicativos frontend que constroem links de busca e filtro a partir de caixas de texto livre precisam de codificacao de componente em cada valor, deixando o modelo de caminho intocado.

Modelos de e-mail e SMS que embutem deep links com nomes de usuarios, tags de campanha ou assuntos Unicode dependem de percent-encoding para que operadoras e clientes nao requebrem ou corrompam o href. Equipes de suporte colam strings meio codificadas de tickets e precisam de um caminho de decodificacao que falhe alto em escapes % truncados em vez de inventar caracteres. Engenheiros de localizacao verificam que linguas multi-byte fazem a ida e volta pela codificacao e decodificacao sem mojibake.

Autores de cursos que ensinam fundamentos da web querem uma pagina dedicada ao percent-encoding com os dois perfis, em vez de enterrar o tema sob uma ferramenta generica de Base64 ou slugs, porque a intencao de busca e as regras de caracteres reservados diferem. Se voce precisa de Base64, Base32, geracao de slugs, montagem de UTM ou validacao completa de estrutura de URL, trate-os como intencoes de busca e paginas separadas em vez de sobrecarregar esta pagina de codificador de porcentagem.

Valores seguros de parametros de query

Codifique cada filtro, termo de busca ou nome de produto com o modo componente para que caracteres reservados nunca quebrem ou reescrevam a query string.

Decodificar URLs coladas ou registradas em logs

Decodifique fragmentos percent-encoded de logs e tickets de volta em texto legivel, com falhas rigidas em sequencias de porcentagem incompletas ou nao hex.

Normalizacao leve de URL completa

Codifique um endereco completo com component false para que espacos e nao ASCII sejam escapados enquanto esquema, caminho e delimitadores de query permanecem intactos.

Qual e a diferenca entre component true e false?

True usa a semantica de encodeURIComponent e escapa separadores reservados como & = ? / : para que um unico valor fique seguro dentro de um parametro ou segmento de caminho. False usa a semantica de encodeURI e preserva a pontuacao estrutural da URL, escapando apenas espacos e nao ASCII.

Posso codificar e decodificar?

Sim. Defina mode como encode (padrao) para aplicar escapes de porcentagem ao texto simples, ou mode como decode para recuperar texto de uma string percent-encoded.

Isso substitui montar um objeto URL completo?

Nao. Ele apenas transforma texto com as regras de percent-encoding. Monte esquema, host, caminho e query voce mesmo, codificando cada valor com o perfil de componente quando necessario.

Quanto custa?

A ferramenta do navegador e gratuita e roda localmente.

O que acontece se uma sequência de porcentagem estiver quebrada?

A decodificação para com uma mensagem clara e a posição do problema. Um % sozinho no fim, ou sequências como %G1 ou %2, são recusados em vez de decodificados pela metade, para que um erro de colagem não vire outro texto.

Tudo nesta página está disponível via API. Esta seção é para equipes que querem integrar a ferramenta aos próprios sistemas; quem não precisa disso pode simplesmente usar a ferramenta acima.

POSThttps://api.kit.forhosting.com/enc/url

Autenticação por token Bearer. Um único POST coloca a tarefa na fila; o resultado chega por webhook ou link assinado.

curl -X POST https://api.kit.forhosting.com/enc/url \
  -H "Authorization: Bearer $KIT_KEY" \
  -H "Content-Type: application/json" \
  -d '{"text":"hello world & café"}'
{
  "text": "hello world & café"
}
{
  "task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
  "type": "enc.url",
  "status": "queued",
  "_links": {
    "result": "/tasks/tsk_…/result"
  }
}

A API é assíncrona: cada chamada devolve um task_id na hora. Se preferir polling, consulte o status a até 1 requisição por segundo.

por chamadaUS$ 0,002

Preço publicado, sem tokens nem créditos escondidos. Tarefa que falha não é cobrada.

HTTPCódigoO que significa
401unauthorizedToken ausente ou inválido. Confira o header Authorization.
402insufficient_balanceSaldo insuficiente para esta tarefa. Faça uma recarga e tente de novo.
404unknown_typeEsse tipo de tarefa não existe. Confira o campo type no catálogo.
429rate_limitedMuitas requisições em pouco tempo. Espere um instante e tente de novo.

Esta capacidade aplica as mesmas regras que o JavaScript expoe como encodeURIComponent e encodeURI: o modo encode escapa os caracteres que o seu perfil exige, o modo decode restaura o texto simples e qualquer sequencia de porcentagem malformada falha imediatamente com invalid_input em vez de devolver lixo meio decodificado.

Como funcionam o percent-encoding e os dois perfis de URL

x=1 possa ser levemente normalizado sem destruir o esqueleto de esquema, caminho e query. Uma porcentagem solta no final, ou sequencias como %G1 ou %2, disparam invalid_input com a posicao e uma explicacao curta. O caminho e trabalho puro de strings, sem rede, sem sementes aleatorias e sem carimbos de relogio, entao entradas identicas sempre produzem JSON identico. O preco das chamadas de API bem-sucedidas e a base publicada de US$ 0,002 por item, e falhas de validacao nao consomem saldo pre-pago.

O que voce envia e o que recebe de volta

Quando mode e omitido, encode e o padrao, entao um unico payload ainda faz trabalho util. Text ausente, objetos que nao sao string, valores de mode nao suportados, valores que nao podem ser interpretados como booleano para component, strings acima do maximo documentado, escapes de porcentagem incompletos, digitos nao hex apos um sinal de porcentagem e erros de URI no nivel do host sobre UTF-8 decodificado invalido falham com invalid_input e uma mensagem clara em ingles. O preco de API bem-sucedido e a base publicada de US$ 0,002 por item.

Onde o percent-encoding de URLs aparece no trabalho real

Como esta capacidade e um motor puro de parse, o preco da API e a base publicada de US$ 0,002 por item bem-sucedido e a validacao malsucedida nao consome saldo.

O que acontece se uma sequencia de porcentagem estiver malformada?

A decodificacao falha com invalid_input, indicando a posicao e o escape ruim (por exemplo um % incompleto ou digitos nao hex). Nada e cobrado por falhas de validacao.

Ver a documentação completa do KIT →