MIME

Den aktuelle version af siden er endnu ikke blevet gennemgået af erfarne bidragydere og kan afvige væsentligt fra den version , der blev gennemgået den 13. maj 2018; checks kræver 13 redigeringer .

MIME ( /maɪm/ , engelsk  M ultipurpose Internet Mail Extensions  - multipurpose Internet mail extensions) er en standard , der beskriver transmissionen af ​​forskellige typer data via e -mail , samt generelt en specifikation for kodning af information og formatering af beskeder på en sådan måde, at de kan sendes over internettet .

Introduktion

MIME definerer mekanismer til at formidle forskellige former for information i tekstdata (især via e-mail), nemlig: tekst på sprog, der bruger ikke-ASCII-kodninger, og ikke-tekstuelle data såsom billeder, musik, film og programmer. MIME er også en grundlæggende komponent i kommunikationsprotokoller såsom HTTP , som kræver, at data overføres i forbindelse med meddelelser som e-mail, selvom dataene ikke rigtig er e-mail.

Grundformatet for elektroniske beskeder er defineret i RFC 5322 , som er en opdateret version af RFC 2822 (som igen er en opdateret version af RFC 822 ). Disse standarder definerer lignende formater for tekst-e-mail-overskrifter og indhold og regler for almindeligt anvendte felter såsom Til: , Emne: , Fra: og Dato: . MIME definerer et sæt e-mail-headere til at definere yderligere meddelelsesattributter, herunder indholdstypen, og definerer et sæt kodninger, der kan bruges til at repræsentere 8-bit binære data ved hjælp af tegn fra 7-bit ASCII. MIME definerer også regler for kodning af udvidede ASCII-tegn (koder 128-255) i e-mail-meddelelsesheadere såsom Emne: .

MIME kan udvides til nye typer - dens definition inkluderer en metode til registrering af nye indholdstyper og andre attributter.

Organisering af data

MIME-formatet understøtter overførsel af flere enheder inden for en enkelt besked. Desuden kan entiteter overføres ikke kun som en enkelt-niveau sekvens, men også som et hierarki med elementer indlejret i hinanden. Medietyper bruges til at betegne flere indhold multipart/*. Arbejde med sådanne typer udføres i henhold til de generelle regler beskrevet i RFC 2046 (medmindre andet er defineret af en specifik medietype). Hvis modtageren ikke ved, hvordan man arbejder med typen, så behandler den den på samme måde som multipart/mixed.

Content-TypeFor at sende en multipel meddelelse tilføjes en parameter (grænse) til overskriften boundary, som angiver en sekvens af tegn, der adskiller dele af meddelelsen. Rammen kan bestå af tal, bogstaver og symboler '()+_,-./:=?. Ved brug af specialtegn (ikke tal eller bogstaver) skal parameterværdien boundaryvære omgivet af dobbelte anførselstegn ". Den maksimale kantlængde er 70 tegn [1] .

Begyndelsen af ​​hver del af beskeden er angivet med en streng --boundary. Slutningen af ​​den sidste besked er angivet med strengen --boundary--. De allerførste CRLF-linjeskifttegn (kode 13 og 10), der begynder og afslutter grænselinjer, er ikke inkluderet i selve delens indhold. Hvis de efterfølges af flere linjeskift, hører de allerede til den inkluderede del.

Der kan være yderligere tekst før første del og efter sidste. Det kaldes henholdsvis præamblen og epilogen . I HTTP-protokollen ignoreres disse elementer. I en e-mail-meddelelse kan præamblen indeholde tekstoutput fra e-mail-klienter, der ikke forstår MIME-formatet.

Allerede i begyndelsen af ​​den inkluderede del er der overskrifter, der beskriver dens indhold ( Content-Type, Content-Lengthosv.). Der skal være en tom linje før selve delteksten, selvom der ikke er nogen overskrifter. Hvis det ikke er defineret Content-Type, tages det som standard - text/plain.

Mark Crispins test

Mark Crispin, forfatteren af ​​IMAP-protokollen, skrev en test for at verificere, at MIME håndteres korrekt [2] . [3] Testen er en e-mail i mbox -format :

Det er et vanvittigt brev! Den har omkring 30 indlejrede dele. Rigtig god test

Originaltekst  (engelsk)[ Visskjule]

Denne besked er skør! Den har omkring 30 dele indlejret inde i hinanden. En meget god test

— udviklere af SquirrelMail [4]

Standarder

RFC datoen Emne Opdateret af Opdateringer Erstattet (forældet af) Erstatter (forældet)
Forældet
RFC 822 13. august 1982 STANDARD FOR FORMATET AF ARPA INTERNET -SMS ( E-mail-
format )
1123, 1138, 1148, 1327, 2156 2822 733 (NIC #41952)
RFC 2048 november 1996 MIME-del fire: Registreringsprocedurer 3023  — 4288, 4289 1521, 1522, 1590
Nuværende
RFC 1556 december 1993 Håndtering af tovejstekster i
MIME
 —  —  —
RFC 2045 november 1996 MIME Part One: Format of Internet Message Bodies
(MIME Part One: Message Body Format)
2184, 2231, 5335, 6532  —  — 1521, 1522, 1590
RFC 2046 november 1996 MIME Part Two: Media Types
(MIME Part Two: Content Types)
2646, 3798, 5147  —  — 1521, 1522, 1590
RFC 2047 november 1996 MIME Part Three: Message Header Extensions for Non-ASCII Text
(MIME Part Three: Header Extensions for Non-ASCII Text)
2184, 2231  —  — 1521, 1522, 1590
RFC 2049 november 1996 MIME Part Five: Overensstemmelseskriterier og eksempler
(MIME Part Five: Overensstemmelseskriterier og eksempler)
 —  —  — 1521, 1522, 1590
RFC 4288 december 2005 Medietypespecifikationer og registreringsprocedurer  —  —  — 2048
RFC 4289 december 2005 MIME-del fire: Registreringsprocedurer  —  —  — 2048
RFC 4855 februar 2007 Medietyperegistrering af RTP-nyttelastformater  —  —  —

Se også

Noter

  1. "Fælles syntaks", s. 20.afsnit 5.1.1. RFC 2046 .
  2. Brev fra Mark Crispin, der beskriver testen (arkiveret)
  3. Test  (utilgængeligt link)
  4. Bemærk i squirrelmail-dokumentationen om Mark Crispins test . Hentet 10. juli 2009. Arkiveret fra originalen 12. juni 2009.

Links