# Mailto

mailto: est un schéma d'URI permettant de créer un lien hypertexte vers une adresse électronique.
Employé par exemple dans une page web en HTML, un tel lien permet à l'utilisateur qui l'a suivi de voir son client de messagerie démarrer l'écriture d'un nouveau message électronique, avec quelques champs déjà remplis, comme l'adresse du destinataire ou encore l'objet du message.

## Normes

mailto: a été défini par plusieurs RFC : la première fois en juillet 1998 par la RFC 2368, qui a été remplacée en octobre 2010 par la RFC 6068.

## Exemples

Extrait de la syntaxe de l'URI dans la norme :
où to est donc une ou plusieurs adresses courriel addr-spec de destinataire (séparées par une "," littérale (ou un ";") et ne comprenant chacune aucun caractère parmi ",", ";", "?", "&") et hfields les autres champs (séparés du champ to par un "?" littéral, ces champs étant séparés entre eux par un signe "&" et comprenant chacun deux parties : un nom symbolique de champ (hfield) ne comportant que des lettres ("from", "to", "cc", "bcc", "subject", "body") et une valeur (hfvalue) donnée à ce champ (qui dans le cas des champs nommés "from", "to", "cc" ou "bcc" peut également donner une ou plusieurs adresses courriel séparées par une "," ou un ";" ). Le champ explicitement nommé "to=..." peut remplacer le premier champ facultatif to, ou le compléter en donnant des adresses de destinataires supplémentaires.
* Avec une adresse courriel : mailto:p.dupond@example.com ou mailto:?to=p.dupond@example.com
* Avec un nom de destinataire convivial : mailto:Paul%20Dupond<p.dupond@example.com>
* Avec l'objet du message : mailto:p.dupond@example.com?subject=Sujet%20du%20courrier
* Avec plusieurs destinataires : mailto:p.dupond@example.com,j.martin@example.com ou mailto:p.dupond@example.com?to=j.martin@example.com
* Avec un destinataire en copie : mailto:p.dupond@example.com?cc=j.martin@example.org
* Avec un destinataire en copie cachée : mailto:p.dupond@example.com?bcc=j.martin@example.org
* Avec un sujet et un contenu du message pré-remplis : mailto:p.dupond@example.com?subject=Bonjour%20Paul&body=J’espère%20que%20vous%20allez%20bien.%20--%20Jean.
* Avec un retour chariot dans le contenu du message : mailto:p.dupond@example.com?body=Bonjour%0d%0aAu%20revoir
* Combinaison de différents champs : mailto:p.dupond@example.com?subject=Sujet%20du%20courrier&cc=pierre@example.org&bcc=jacques@example.net&body=Bonjour

## Utilisation sur une page Web

L'intégration de mailto: dans une balise HTML utilise le format suivant :

## Inconvénients

* Les robots spambot peuvent récolter les adresses contenues dans les commandes mailto: pour l'envoi de pourriels.
* Un client de messagerie doit être configuré pour que le lien mailto: soit fonctionnel. Sinon, le lien mailto: ne permet pas d'envoyer de courriel. D'autant que les webmails sont très utilisés et ceux-ci sont rarement configurés comme client de messagerie par défaut du système. C'est une des raisons pour lesquelles de nombreux sites web proposent un Formulaire de contact plutôt qu'un lien mailto:.
* Les spécifications RFC ne limitent pas la longueur de la commande mailto:. Par contre, les logiciels gérant cette commande ont des limitations. Les premiers logiciels limitaient la taille à 255 caractères. De nos jours, les navigateurs acceptent des tailles de plus en plus grandes, déplaçant cette limitation au niveau du Système d'exploitation et du client de messagerie. Cependant, pour rester compatible avec les anciens systèmes, la taille de la commande mailto: doit rester modeste.