También disponible en: English · Português · Français · العربية
Generador de enlaces mailto
Crea un enlace mailto con asunto y mensaje que llegue intacto, y comprueba qué habría estropeado la forma habitual de construirlo.
Qué es un enlace mailto
Un enlace mailto es una URI que abre el programa de correo de quien lo pulsa con un mensaje ya empezado. Si lo pones en un href, un clic le entrega un borrador redactado en lugar de una dirección que tenga que copiar. La forma más simple es solo una dirección, y todo lo que va después del signo de interrogación —asunto, cuerpo, cc, cco— son campos opcionales.
Por sí mismo no envía nada. El enlace únicamente abre un borrador en el programa de correo que la persona tenga como predeterminado, y sigue teniendo que pulsar enviar. Conviene saberlo antes de diseñar nada alrededor, porque significa que el contenido es totalmente visible y totalmente editable por quien hace clic.
Este generador construye el enlace, lo muestra como texto y como etiqueta HTML, y te deja abrirlo para comprobar qué hace tu propio programa de correo con él. También te enseña cómo queda ese mismo enlace construido como lo construye casi todo el mundo, que es la parte interesante.
Cómo se usa
- Pon el destinatario. Una dirección, o varias separadas por comas. Cc y Cco funcionan igual y son opcionales; la herramienta te avisa de que la especificación los trata de forma distinta al asunto y al cuerpo.
- Escribe el asunto y el mensaje. Tal cual quieres que aparezcan, saltos de línea incluidos: de la codificación se encarga la herramienta. El enlace se rehace mientras escribes.
- Copia el enlace o ábrelo para probarlo. Copiar te da la URI para un href; el botón de abrir se la pasa a tu programa de correo predeterminado para que confirmes que llega como querías.
Por qué casi todos los enlaces mailto están mal codificados
Un enlace mailto termina en algo que parece exactamente una cadena de consulta, así que se construye como tal: con codificación de formulario, las mismas reglas que usa un navegador al enviar un formulario. Ese es el error, y es casi universal porque nunca falla nada de forma visible.
El RFC 6068 define qué puede aparecer en uno de estos campos, y en esa lista no está el espacio. Sí está el signo más, como signo más literal. Así que cuando la codificación de formulario convierte tu espacio en un más, no está escribiendo una abreviatura que el programa de correo vaya a deshacer: está escribiendo un carácter que se significa a sí mismo, y un cliente correcto mostrará un asunto que dice Consulta+web.
Los saltos de línea son el segundo caso: la especificación dice que un salto dentro del cuerpo debe escribirse %0D%0A, y la codificación de formulario produce solo la segunda mitad.
Comprobado sobre los 128 caracteres ASCII y no sobre una muestra, la codificación de formulario difiere de la correcta en 14. Esa cifra exagera el problema, así que conviene separarla: 11 de los 14 son caracteres escritos de forma más larga de lo necesario, algo permitido que llega idéntico —el apóstrofo de una palabra como qué tal es uno de ellos—. Solo 3 cambian lo que recibe la otra persona, y esos 3 son el espacio y las dos mitades de un salto de línea. Pocos caracteres, y precisamente los que aparecen en cualquier asunto y cualquier mensaje reales.
Hay una versión práctica de esto que cuesta correo de verdad. El signo más es legal en una dirección, y las direcciones con más —tu+tienda@ejemplo.com, el truco para filtrar— son habituales. Construye el enlace bien y el más sobrevive intacto. Constrúyelo con codificación de formulario y el más suele volver convertido en espacio, que no es una dirección válida, y el mensaje rebota.
Limitaciones honestas
La especificación es cuidadosa con qué campos debería respetar un programa de correo, y es más restrictiva que la práctica. La sección 4 nombra solo Subject, Keywords y Body como seguros y útiles en general, y dice que un cliente puede componer el mensaje con solo algunos de los campos recibidos. Cc y Cco los respeta cualquier programa serio, así que esta herramienta los ofrece, pero son una petición y no una garantía; un campo como From deberías darlo por ignorado, o por motivo suficiente para que el mensaje se rechace entero.
Los saltos de línea van en el cuerpo y en ningún otro sitio. La especificación dice que no deberían usarse en otros campos, así que un salto en el asunto se señala aquí en vez de codificarse en silencio; la mayoría de los programas lo eliminará o lo estropeará.
El aspecto final del borrador tampoco está del todo en tus manos. Algunos clientes truncan los cuerpos largos, unos pocos quitan el formato, y un webmail configurado como gestor del sistema se comporta de otra forma que un programa de escritorio. Prueba el enlace en el programa que realmente usa tu público antes de fiarte de un mensaje largo, y deja lo imprescindible en el texto visible de la página y no dentro del enlace.
Por último, una dirección escrita en una página como enlace mailto es una dirección escrita en una página. Los robots que recolectan direcciones leen HTML perfectamente, y ninguna codificación cambia eso: codificar los caracteres con porcentaje es una regla de codificación, no una técnica de ocultación, y esta herramienta no pretende lo contrario.
¿Por qué es gratis?
El enlace se arma en tu navegador. Codificar una cadena no es trabajo que necesite un servidor, así que no hay nada que mantener ni por lo que cobrar, ni cuenta que crear.
Nada de lo que escribes se sube, se guarda ni se registra, y desde esta página no se envía ningún mensaje: solo produce texto para que lo pegues. Las direcciones y los borradores son justo lo que no debería viajar al servidor de otro para que se lo formatee.