MIME: Multipurpose Internet Mail Extensions
-
le protocole SMTP impose certaines restrictions sur le contenu des messages:
- le contenu ne doit être composé que de caractères ASCII
- les lignes ne peuvent pas excéder 1000 caractères
-
la taille totale du contenu ne peut pas excéder une certaine dimension
-
l'extension MIME a été conçue pour remédier à
ces inconvénients:
- un message peut contenir plusieurs "objets" (Content-type: multipart/mixed;)
- plus de limite sur la longueur des lignes
- jeux de caractères autres que ASCII peuvent être utilisés
- plusieurs polices et fontes de caractères (text/enriched)
- un message peut contenir en annexe des fichiers "binaires" spécifiques à certaines applications
-
un message peut contenir des annexes multi-média (images, son,
vidéo, etc.)
-
chaque élément/objet d'un message MIME porte certaines indications
complémentaires:
- indicateur de type/sous-type (par ex. text/plain, text/enriched, image/gif, image/jpeg, audio/x-wav, audio/basic, audio/x-mpeg, application/postscript, application/rtf, application/pdf, etc.)
- indicateur d'encodage (par ex. Content-Transfer-Encoding: quoted-printable)
-
indicateur de jeu de caractères (par ex. charset=iso-8859-1)
-
ces indications sont automatiquement ajoutées par le logiciel de courrier
électronique s'il se conforme au standard MIME et s'il a été
correctement configuré pour reconnaître le type des annexes
(généralement sur la base du nom de fichier). Pour Unix, voir
exemple de fichier mailcap. Pour
Windows, les informations sont obtenues de la base des registres (voir l'onglet
Types de Fichiers dans le panneau de dialogue Options des dossiers obtenu
depuis le menu Outils de l'Explorateur).
-
à la réception d'un message utilisant les extensions MIME,
l'apparence du message va dépendre de l'utilisation, par le
récipiendaire, d'un logiciel se conformant au standard MIME. Si ce
dernier n'a pas un support MIME, il risque d'avoir beaucoup de peine à
lire le message si celui-ci contient autre chose que du simple texte ASCII.
-
lors de l'envoi d'annexes spécifiques à une certaine application
(par ex. un traitement de texte), il faut garder à l'esprit que même
si le récipiendaire a un système de courrier électronique
supportant MIME, il doit en plus disposer de l'application en question pour
pouvoir utiliser l'annexe jointe au message. Sinon, il ne pourra que sauver
l'annexe dans un fichier pour essayer ensuite de transférer
ce fichier sur une machine sur laquelle serait installée
l'application permettant de visualiser l'annexe (à supposer qu'il
puisse trouver une telle machine).
- pour savoir si un de vos correspondant dispose d'un système de courrier électronique conforme à l'extension MIME, examinez l'entête d'un message que cette personne vous aurait envoyé. Si vous y trouvez une ligne du genre "Mime-version: 1.0", il ne devrait pas y avoir de problème avec l'utilisation des extensions offertes par MIME.
Exemple de message au standard MIME:
Return-Path: <Bertrand.Ibrahim@cui.unige.ch> Received: from DIRECTORY-DAEMON.cuimail.unige.ch by cuimail.unige.ch (PMDF V6.0-24 #44959) id <0G2X00E01SZH02@cuimail.unige.ch> for bertrand@cuimail.unige.ch (ORCPT Bertrand.Ibrahim@cui.unige.ch); Tue, 24 Oct 2000 15:47:41 +0200 (MET DST) Received: from cuimail.unige.ch ([129.194.69.17]) by cuimail.unige.ch (PMDF V6.0-24 #44959) with ESMTP id <0G2X00CB9SZGYF@cuimail.unige.ch> for Bertrand.Ibrahim@cui.unige.ch; Tue, 24 Oct 2000 15:47:40 +0200 (MET DST) Date: Tue, 24 Oct 2000 15:47:40 +0200 From: Bertrand.Ibrahim@cui.unige.ch Subject: exemple de message au standard MIME To: Bertrand.Ibrahim@cui.unige.ch Message-id: <0G2X00CBASZGYF@cuimail.unige.ch> MIME-version: 1.0 X-Mailer: exmh version 2.0.2 2/24/98 Content-type: multipart/mixed; boundary="Boundary_(ID_JK8sfTufWdySQFXNsMQU4Q)" X-UIDL: 6ef6f5e1e6fcac3c9b4c4496d15d3ca8 This is a multipart MIME message. --Boundary_(ID_JK8sfTufWdySQFXNsMQU4Q) Content-type: text/plain; charset=iso-8859-1 Content-transfer-encoding: quoted-printable Ceci est un message de d=E9monstration permettant de voir comment sont repr=E9sent=E9es les lettres accentu=E9es et les pi=E8ces jointes. --Boundary_(ID_JK8sfTufWdySQFXNsMQU4Q) Content-type: image/gif; name=marine.anchor.gif Content-transfer-encoding: base64 Content-disposition: attachment; filename=marine.anchor.gif Content-description: marine.anchor.gif R0lGODdhEAAQAPAAAAAAAP///ywAAAAAEAAQAAACKIyPqcCt2NyDINR5mMW5Xi5x1pdEhjai IZqe7KtubibT44lFbE6KUwEAOw== --Boundary_(ID_JK8sfTufWdySQFXNsMQU4Q)--
- Logiciel de décodage de pièces jointes Decode Shell Extension
- RFC 1426: SMTP Service Extension for 8bit-MIME transport
- RFC 1830: SMTP Service Extensions for Transmission of Large and Binary MIME Messages
- RFC 2045: (MIME) Part One: Format of Internet Message Bodies
- RFC 2046: (MIME) Part Two: Media Types
- RFC 2047: (MIME) Part Three: Message Header Extensions for Non-ASCII Text
- RFC 2048: (MIME) Part Four: Registration Procedures
- RFC 2049: (MIME) Part Five: Conformance Criteria and Examples