Também disponível em: English · Español · Français · العربية
Gerador de link mailto
Monte um link mailto com assunto e mensagem que chega intacto — e veja o que a forma habitual de montá-lo teria estragado.
O que é um link mailto
Um link mailto é uma URI que abre o programa de e-mail de quem clica com uma mensagem já começada. Colocado num href, um clique entrega um rascunho pronto em vez de um endereço para a pessoa copiar. A forma mais simples é só um endereço, e tudo que vem depois do ponto de interrogação — assunto, corpo, cc, cco — são campos opcionais.
Sozinho ele não envia nada. O link apenas abre um rascunho no programa de e-mail que a pessoa tem como padrão, e ela ainda precisa clicar em enviar. Vale saber disso antes de desenhar qualquer coisa em cima, porque significa que o conteúdo é totalmente visível e totalmente editável por quem clicou.
Este gerador monta o link, mostra como texto e como tag HTML, e deixa você abri-lo para conferir o que o seu próprio programa de e-mail faz com ele. Também mostra como fica esse mesmo link montado do jeito que quase todo mundo monta, que é a parte interessante.
Como usar
- Informe o destinatário. Um endereço, ou vários separados por vírgulas. Cc e Cco funcionam igual e são opcionais; a ferramenta avisa que a especificação os trata de forma diferente do assunto e do corpo.
- Escreva o assunto e a mensagem. Do jeito que você quer que apareçam, quebras de linha inclusive — a codificação fica por conta da ferramenta. O link é refeito enquanto você digita.
- Copie o link ou abra para testar. Copiar dá a URI para um href; o botão de abrir entrega ao seu programa de e-mail padrão, para você confirmar que chega como pretendia.
Por que quase todo link mailto está codificado errado
Um link mailto termina em algo que parece exatamente uma query string, então é montado como tal: com codificação de formulário, as mesmas regras que um navegador usa ao enviar um formulário. Esse é o erro, e ele é quase universal porque nada nunca falha de forma visível.
A RFC 6068 define o que pode aparecer num desses campos, e o espaço não está na lista. O sinal de mais está, como sinal de mais literal. Então quando a codificação de formulário transforma seu espaço num mais, ela não está escrevendo uma abreviação que o programa de e-mail vá desfazer: está escrevendo um caractere que significa a si mesmo, e um cliente correto vai mostrar um assunto escrito Contato+pelo+site.
As quebras de linha são o segundo caso: a especificação diz que uma quebra dentro do corpo precisa ser escrita %0D%0A, e a codificação de formulário produz só a segunda metade.
Verificado nos 128 caracteres ASCII e não numa amostra, a codificação de formulário difere da correta em 14. Esse número exagera o problema, então vale separar: 11 dos 14 são caracteres escritos de forma mais longa do que precisavam, o que é permitido e chega idêntico — o apóstrofo é um deles. Só 3 mudam o que a outra pessoa recebe, e esses 3 são o espaço e as duas metades de uma quebra de linha. Poucos caracteres, e justamente os que aparecem em qualquer assunto e qualquer mensagem reais.
Há uma versão prática disso que custa e-mail de verdade. O sinal de mais é válido num endereço, e endereços com mais — voce+loja@exemplo.com, o truque para filtrar — são comuns. Monte o link certo e o mais sobrevive intacto. Monte com codificação de formulário e o mais costuma voltar como espaço, o que não é um endereço válido, e a mensagem volta.
Limitações honestas
A especificação é cuidadosa sobre quais campos um programa de e-mail deveria honrar, e é mais restritiva que a prática. A seção 4 nomeia apenas Subject, Keywords e Body como seguros e úteis no geral, e diz que um cliente pode compor a mensagem com só parte dos campos recebidos. Cc e Cco são honrados por qualquer programa sério, então esta ferramenta os oferece — mas são um pedido, não uma garantia, e um campo como From você deve dar por ignorado, ou por motivo suficiente para a mensagem ser recusada inteira.
Quebras de linha vão no corpo e em nenhum outro lugar. A especificação diz que não devem ser usadas em outros campos, então uma quebra no assunto é sinalizada aqui em vez de codificada em silêncio; a maioria dos programas vai removê-la ou estragá-la.
A aparência final do rascunho também não está totalmente nas suas mãos. Alguns clientes truncam corpos longos, uns poucos tiram a formatação, e um webmail configurado como aplicativo do sistema se comporta de forma diferente de um programa de desktop. Teste o link no programa que o seu público realmente usa antes de confiar numa mensagem longa, e deixe o essencial no texto visível da página, não dentro do link.
Por fim, um endereço escrito numa página como link mailto é um endereço escrito numa página. Robôs que coletam endereços leem HTML perfeitamente, e nenhuma codificação muda isso: codificar os caracteres com porcentagem é uma regra de codificação, não uma técnica de ofuscação, e esta ferramenta não finge o contrário.
Por que é grátis?
O link é montado no seu navegador. Codificar um texto não é trabalho que precise de servidor, então não há nada para manter nem pelo que cobrar, e nenhuma conta para criar.
Nada do que você digita é enviado, guardado ou registrado, e desta página nenhuma mensagem sai: ela só produz texto para você colar. Endereços e rascunhos são exatamente o tipo de coisa que não deveria viajar até o servidor de outra pessoa para ser formatado.