Le format MIME permet de spécifier le format du corps du message, dont la RFC 822 se contente de le décrire comme un ensemble de lignes de caractères sur 7 bits. En fait, MIME permet de spécifier le type du message (texte, image, son, vidéo ou plusieurs types à la fois), et le codage du message (7 bits, 8 bits, quoted-printable ou base64). MIME est décrit par les RFC 1341 à 1345, puis 2045 à 2049.
Voici un exemple de courrier au format MIME :
From: jbon@domaine1.com To: jdeuf@domaine2.com Subject: MIME MIME-Version: 1.0 Content-Type: multipart/mixed; boundary="mime-c-bien" Ceci est un message mime --mime-c-bien Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Salut, je t'envoie le document sur le format MIME que tu m'as demandé. Cordialement. Jean BON --mime-c-bien Content-Type: message/external-body; access-type=anon-ftp; site="ftp.domaine1.com"; name="/pub/Linux/Mail/MIME/mime.txt" --mime-c-bien |
Les nouveaux champs apportés par MIME sont :
Ce message est composé de deux parties (multipart/mixed) séparées par une chaîne unique (boundary="mime-c-bien"). La première partie est un texte normal (text/plain), contenant des accents, donc utilisant un jeu de caractère différent de l'ASCII classique (charset=iso-8859-1), tandis que la deuxième partie est une référence à un objet externe (message/external-body) accédé par ftp anonyme (access-type=anon-ftp).
Voici un autre exemple de message au format MIME :
From: Jean BON <Jean.Bon@domaine1.com> To: John.Deuf@domaine2.com Mime-Version: 1.0 Content-Type: text/enriched; charset="iso-8859-1" Content-Transfer-Encoding: quoted-printable X-UIDL: '8e!!!(`"!?4W"!5J4"! Status: RO Content-Length: 662 Lines: 45 <bold><color><param>0000,0000,ffff</param><bigger> les infos de la semaine </bigger></color></bold> Voici une offre de job arrivée le vendredi 12 janvier : <bold>Le Café du Palais</bold> contacter M. Dugenoux. Ils <bold><color><param>ffff,0000,0000</param>recherchent des serveurs</color></bold> pour leurs différents services (midi et soir et WE). |
La balise bold affichera le texte en gras. Les autres balises pour le texte enrichi MIME sont spécifiées dans la RFC 1523.