ForHosting KIT · Ferramentas para dev

Codificador Q de cabeçalhos

Coloque acentos no assunto ou no nome do remetente de um e-mail sem quebrar nada: Hello café vira =?UTF-8?Q?Hello_caf=C3=A9?=, e uma palavra codificada colada volta a ser texto legível. 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 café
Modo de cálculo
Encode
Você obtém
Resultado
=?UTF-8?Q?Hello_caf=C3=A9?=
Codificação
rfc2047-q
Conjunto de caracteres
UTF-8
Forma
Encoded word

Este codificador Q de cabeçalhos converte texto UTF-8 simples na forma Q do RFC 2047 usada dentro de encoded-words MIME para cabeçalhos de e-mail não ASCII, e decodifica essas cadeias de volta a texto legível. charset? Q? …? Verificações comuns incluem codificar Hello café para =? UTF-8? Q? Hello_caf=C3=A9? = e decodificar essa cadeia de volta à frase original.

O que é a codificação Q do RFC 2047 e o que esta ferramenta devolve

O RFC 2047 define encoded-words para que cabeçalhos de e-mail que historicamente esperavam sobretudo ASCII ainda possam carregar texto internacional sem quebrar as regras de caminho SMTP. O método Q mantém a maior parte do texto latino legível em um terminal simples: ASCII imprimível seguro aparece como ele mesmo, o espaço é preferencialmente escrito como sublinhado, e qualquer outro octeto vira um sinal de igual seguido de dois dígitos hexadecimais em maiúsculas.

O sinal de igual, o ponto de interrogação e o sublinhado devem ser escapados quando aparecem como dados, porque são estruturais na gramática da encoded-word. Quebras de linha suaves do quoted-printable de corpo não se aplicam aqui: uma encoded-word é um token atômico e não deve conter uma sequência de quebra suave. Se você precisa de empacotamento binário opaco em cabeçalhos, prefira o método B ou um auxiliar Base64; esta landing é para o caminho Q legível que assuntos e nomes de exibição ainda usam todos os dias.

Onde a codificação Q aparece nos cabeçalhos de e-mail

Desenvolvedores encontram a codificação Q do RFC 2047 ao inspecionar linhas Subject que começam com igual-interrogação UTF-8 interrogação Q, ao criar nomes de exibição internacionais para cabeçalhos From e To, ou ao depurar por que um acento de café virou sublinhado e pares igual-hex em um dump de mensagem bruta. Equipes de frontend e suporte decodificam trechos Q durante a investigação de tickets sem colar dados em scripts ad hoc que tratam mal o sublinhado no lugar do espaço ou confundem quoted-printable de corpo com regras Q de cabeçalho.

Serviços backend codificam amostras de configuração ou strings multilíngues curtas antes de colocá-las em campos de cabeçalho onde transporte de 8 bits sem restrições não é garantido. Engenheiros de qualidade geram pares determinísticos de encode e decode para testes de contrato, para que uma biblioteca de correio que afirme suportar RFC 2047 não possa mudar em silêncio o casing hex, deixar espaços sem escape ou aceitar sequências igual quebradas.

Educadores usam a mesma ferramenta ao ensinar a diferença entre quebras suaves do quoted-printable de corpo e átomos Q de cabeçalho que devem permanecer em um único token. Combine com auxiliares MIME quoted-printable quando estiver trabalhando em corpos e não em cabeçalhos, e com auxiliares Base64 quando uma encoded-word B for a escolha certa para dados densos de cabeçalho com aparência binária.

Depuração de Subject e nome de exibição

Codifique ou decodifique fragmentos Subject e From de nome de exibição em Q do RFC 2047 para que acentos e espaços coincidam com o que os clientes de e-mail mostram.

Preparação de cabeçalhos em gateways legados

Transforme texto UTF-8 simples em tokens de cabeçalho codificados em Q seguros para o transporte antes de enviar por caminhos de correio de 7 bits restritos.

Como a codificação Q de cabeçalho difere do quoted-printable de corpo?

A codificação Q de cabeçalho (RFC 2047) mapeia o espaço para sublinhado, proíbe quebras de linha suaves dentro de uma encoded-word e trata =, ? e _ como especiais.

Por que os espaços aparecem como sublinhados?

Porque a palavra codificada precisa ser um bloco único, sem espaços, dentro do cabeçalho; por isso o método Q escreve cada espaço como sublinhado. Na decodificação, cada sublinhado volta a ser espaço, e um sublinhado real do texto é escapado.

O que quer dizer o =?UTF-8?Q? no começo?

É o envelope da palavra codificada: primeiro o conjunto de caracteres, depois a letra Q do método e então o texto codificado, fechado por ?=. A ferramenta acrescenta esse envelope ao codificar, a menos que você peça só o conteúdo.

Quais caracteres precisam ser escapados na codificação Q?

O sinal de igual, o ponto de interrogação e o sublinhado, quando fazem parte do texto, porque têm função na estrutura da palavra codificada. Qualquer outro byte inseguro vira um sinal de igual com dois dígitos hexadecimais maiúsculos.

O que acontece se a sequência de escape estiver incompleta?

A ferramenta recusa o texto em vez de adivinhar. Um sinal de igual sem dois dígitos hexadecimais válidos logo depois indica uma cópia cortada ou alterada, e é melhor corrigir a origem do que receber um resultado errado.

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/quoted-printable-q

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/quoted-printable-q \
  -H "Authorization: Bearer $KIT_KEY" \
  -H "Content-Type: application/json" \
  -d '{"text":"Hello café"}'
{
  "text": "Hello café"
}
{
  "task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
  "type": "enc.quoted_printable_q",
  "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.

Diferente do quoted-printable do corpo, a codificação Q de cabeçalho mapeia cada espaço para um sublinhado, proíbe quebras de linha suaves dentro de uma encoded-word e reserva o ponto de interrogação e o sublinhado para que os analisadores de correio nunca confundan o payload com o quadro =? O motor é totalmente determinístico: a mesma entrada, mode, charset e form sempre produzem o mesmo resultado, sem chamadas de rede, sais aleatórios nem atalhos dependentes da data. Use grátis no navegador para depurar e-mail e praticar cabeçalhos, ou chame a API a US$ 0,002 por solicitação bem-sucedida quando pipelines precisarem de transformações RFC 2047 reproduzíveis em CI e serviços backend.

O que é a codificação Q do RFC 2047 e o que esta ferramenta devolve

Uma encoded-word tem a forma igual-interrogação charset interrogação encoding interrogação payload interrogação-igual, em que a letra de encoding é Q para o método semelhante a quoted-printable ou B para Base64. Esta página segue sempre esse contrato para texto UTF-8 por padrão: o mode encode mapeia sua string para bytes do charset, emite sublinhado para espaço e igual-hex para bytes inseguros e, opcionalmente, envolve o payload como encoded-word completa; o mode decode aceita uma encoded-word completa ou um payload Q nu, expande sublinhado e pares igual-hex, e rejeita sequências incompletas ou não hexadecimais em vez de adivinhar. A resposta JSON inclui result para a string transformada, mode ecoando encode ou decode, encoding fixo em rfc2047-q, charset, form (encoded_word ou payload), o campo payload nu para asserções fáceis, e input_bytes mais output_bytes para fixar tamanhos em testes. Não há caminho de streaming nem reparo silencioso de texto Q quebrado: ou a string é válida ou a solicitação falha com invalid_input.

Como text, mode, charset e form são lidos e como os resultados permanecem reproduzíveis

charset? Q? …? Encode aceita strings Unicode, converte-as com as regras do charset escolhido e emite tokens Q com escapes hexadecimais em maiúsculas e sublinhado para cada espaço. Depois que os bytes são recuperados, uma decodificação UTF-8 fatal garante que lixo binário não vire mojibake quando o charset é UTF-8. O campo de payload preferido é text, com aliases input, value e s, para que formulários, query strings e clientes SDK reutilizem o mesmo contrato sem renomear colunas. Mode tem padrão encode e aceita decode de forma explícita; os aliases op, direction e action mapeiam para o mesmo comutador em scripts que já usam esses nomes. Charset tem padrão UTF-8 e é escrito na encoded-word no encode; ao decodificar uma encoded-word completa o charset é tomado do próprio token, e ao decodificar um payload nu o parâmetro charset escolhe como os bytes recuperados viram texto. Form tem padrão encoded_word para que encode devolva uma string completa =? = pronta para um fragmento Subject ou From de nome de exibição; defina form como payload quando você só quiser o corpo Q interno para testes unitários ou para compor cabeçalhos multi-segmento por conta própria. Decode exige uma string Q bem formada: um igual sozinho no fim da entrada, um igual seguido de um único caractere, ou um igual seguido de dígitos não hexadecimais falham com uma mensagem invalid_input clara nomeando o escape malformado. Combine a execução gratuita do navegador nesta página com a API paga quando precisar do resultado matemático idêntico dentro de um pipeline automatizado sem reimplementar as tabelas RFC 2047 por conta própria. Entradas inválidas devolvem invalid_input e não são cobradas, o que mantém a validação barata enquanto transformações bem-sucedidas seguem um preço fixo por item de US$ 0,002.

Onde a codificação Q se encaixa em cabeçalhos de e-mail, MIME e fixtures de teste

Nesta página o trabalho roda inteiramente no seu navegador; pela API cada consulta bem-sucedida custa US$ 0,002, validação falha não é cobrada e nada é armazenado após a resposta. Essa divisão — exploração interativa gratuita e uma API de preço com resultado idêntico — combina com o restante do catálogo KIT tier A e permite passar de uma demo de sala de aula a um pipeline automatizado sem mudar o resultado codificado.

Geração de fixtures de cabeçalho de e-mail

Produza encoded-words reproduzíveis para testes unitários, arquivos golden e checagens de integração SMTP ou IMAP que afirmem a forma do cabeçalho.

Quanto custa o codificador Q de cabeçalhos?

É grátis no seu navegador nesta página. Pela API uma solicitação bem-sucedida custa US$ 0,002; entradas inválidas não são cobradas.

Quais modes e forms são suportados?

mode=encode (padrão) transforma texto simples em codificação Q; mode=decode transforma uma string Q de volta em texto. form=encoded_word (padrão no encode) envolve como =?charset?Q?payload?=; form=payload devolve só o corpo Q interno.

O que acontece se uma sequência de escape estiver malformada?

Decode falha com invalid_input. =XX incompleto, dígitos não hexadecimais após = ou caracteres ilegais em um payload Q são rejeitados em vez de adivinhados.

O resultado é determinístico?

Sim. O mesmo text, mode, charset e form sempre produzem o mesmo resultado, sem rede, aleatoriedade ou comportamento dependente da data.

Ver a documentação completa do KIT →