Er enthält eine Vielzahl von Angaben, die allerdings nicht alle die Zustellung der Mail genutzt werden. Der Mail-Client zeigt normalerweise nicht alle Header-Daten an, sondern nur Absender, Empfänger, Betreff und Datum.
Die einzelnen Teile einer MIME-Mail werden durch die als boundary definierte Zeichenkette voneinander getrennt und enthalten ihrerseits noch einmal eine Art Sub-Header, der wie der übrige Mail-Inhalt einfach in den Body geschrieben wird.
Body
Nach der Angabe des Content-Typs muss noch der Zeichensatz festgelegt werden. Hier kommt üblicherweise ISO-8859-1 zum Einsatz, der neben den ASCII-Zeichen auch die meisten westeuropäischen Sonderzeichen umfasst.
Für alle Teile der Mail die mit Content-Transfer-Encoding angegeben werden, muss angegebenwerde wie die Daten kodiert sind.
Eine Mail darf nämlich nur aus den 7-Bit-ASCII-Zeichen bestehen. Kommen andere Zeichen vor, müssen diese kodiert werden - andernfalls kommt beim Empfänger nur Zeichensalat an. Die einfachste Möglichkeit ist quoted-printable; hier werden die problematischen Zeichen einfach durch ein Gleichheitszeichen und ihren ASCII-Wert ersetzt, etwa =FC für ü. Da damit allerdings nicht alle möglichen Zeichen abgedeckt werden, nimmt man quoted-printable lediglich für Textmails. Andere Daten, insbesondere Dateianhänge, werden meist mit base64 kodiert.
Dateianhänge und HTML-Mails mit Bildern
Ein Bild an eine Mail anzuhängen, ist nun auch kein Problem mehr.
Der Sub-Header für diesen Teil der Mail sähe zum Beispiel so aus: