MIME ( /maɪm/ , anglicky M ultipurpose Internet Mail Extensions - víceúčelová rozšíření internetové pošty) je standard , který popisuje přenos různých typů dat prostřednictvím e - mailu a také obecně specifikaci pro kódování informací a formátování zpráv. takovým způsobem, aby je bylo možné odesílat přes internet .
MIME definuje mechanismy pro přenos různých druhů informací v rámci textových dat (zejména prostřednictvím e-mailu), jmenovitě: text v jazycích, které používají jiné kódování než ASCII, a netextová data, jako jsou obrázky, hudba, filmy a programy. MIME je také základní součástí komunikačních protokolů, jako je HTTP , které vyžadují přenos dat v kontextu zpráv, jako je e-mail, i když data ve skutečnosti nejsou e-mailem.
Základní formát pro elektronické zprávy je definován v RFC 5322 , což je aktualizovaná verze RFC 2822 (což je zase aktualizovaná verze RFC 822 ). Tyto standardy definují podobné formáty pro záhlaví a obsah textových e-mailů a pravidla pro běžně používaná pole, jako je Komu: , Předmět: , Od: a Datum: . MIME definuje sadu hlaviček e-mailů pro definování dalších atributů zpráv, včetně typu obsahu, a definuje sadu kódování, která lze použít k reprezentaci 8bitových binárních dat pomocí znaků ze 7bitového ASCII. MIME také definuje pravidla pro kódování rozšířených znaků ASCII (kódy 128-255) v hlavičkách e-mailových zpráv, jako je Subject: .
MIME je rozšiřitelný o nové typy – jeho definice zahrnuje metodu registrace nových typů obsahu a dalších atributů.
Formát MIME podporuje přenos více entit v rámci jedné zprávy. Entity lze navíc přenášet nejen jako jednoúrovňovou sekvenci, ale také jako hierarchii s prvky vnořenými do sebe. Typy médií se používají k označení více obsahu multipart/*. Práce s takovými typy se provádí podle obecných pravidel popsaných v RFC 2046 (pokud není u konkrétního typu média definováno jinak). Pokud příjemce neví, jak s typem pracovat, pak s ním zachází stejně jako s multipart/mixed.
Pro odeslání více zpráv je do hlavičky Content-Typepřidán parametr (hranice) boundary, který označuje sekvenci znaků, které oddělují části zprávy. Ohraničení může být tvořeno čísly, písmeny a symboly '()+_,-./:=?. Při použití speciálních znaků (nikoli čísel nebo písmen) musí být hodnota parametru boundaryuzavřena do dvojitých uvozovek ". Maximální délka ohraničení je 70 znaků [1] .
Začátek každé části zprávy je označen řetězcem --boundary. Konec poslední zprávy je označen řetězcem --boundary--. Úplně první znaky zalomení řádku CRLF (kódy 13 a 10), které začínají a končí hraniční čáry, nejsou zahrnuty do obsahu samotného dílu. Pokud po nich následuje více zalomení řádků, pak již patří do zahrnuté části.
Před první částí a za poslední může být další text. Říká se tomu preambule a epilog . V protokolu HTTP jsou tyto prvky ignorovány. V e-mailové zprávě může preambule obsahovat textový výstup e-mailových klientů, kteří nerozumějí formátu MIME.
Na samém začátku zahrnuté části jsou nadpisy popisující její obsah ( Content-Typeatd Content-Length.). Před samotným tělem součásti musí být prázdný řádek, i když nejsou žádné záhlaví. Pokud není definováno Content-Type, pak se jako výchozí použije - text/plain.
Mark Crispin, autor protokolu IMAP, napsal test, který měl ověřit, že MIME je zpracováno správně [2] . [3] Test je e-mail ve formátu mbox :
Tohle je šílený dopis! Má asi 30 vnořených částí. Velmi dobrý test
Původní text (anglicky)[ zobrazitskrýt]Tato zpráva je šílená! Má asi 30 částí vnořených do sebe. Velmi dobrý test
— vývojáři SquirrelMail [4]RFC | datum | Téma | Aktualizováno uživatelem | Aktualizace | Nahrazeno (zastaralé) | Nahrazuje (zastaralé) |
---|---|---|---|---|---|---|
Zastaralý | ||||||
RFC 822 | 13. srpna 1982 | STANDARD PRO FORMÁT INTERNETOVÝCH TEXTOVÝCH ZPRÁV ARPA ( formát e-mailu ) |
1123, 1138, 1148, 1327, 2156 | 2822 | 733 (NIC #41952) | |
RFC 2048 | listopadu 1996 | MIME část čtvrtá: Postupy registrace | 3023 | — | 4288, 4289 | 1521, 1522, 1590 |
Proud | ||||||
RFC 1556 | prosince 1993 | Manipulace s obousměrnými texty v MIME |
— | — | — | — |
RFC 2045 | listopadu 1996 | MIME část 1: Formát těl internetových zpráv (MIME část 1: Formát těla zprávy) |
2184, 2231, 5335, 6532 | — | — | 1521, 1522, 1590 |
RFC 2046 | listopadu 1996 | MIME část 2: Typy médií (MIME část 2: Typy obsahu) |
2646, 3798, 5147 | — | — | 1521, 1522, 1590 |
RFC 2047 | listopadu 1996 | Část třetí MIME: Rozšíření záhlaví zpráv pro text mimo ASCII (část třetí části MIME: Rozšíření záhlaví pro text mimo ASCII) |
2184, 2231 | — | — | 1521, 1522, 1590 |
RFC 2049 | listopadu 1996 | Část pátá MIME: Kritéria a příklady shody (MIME Část pátá: Kritéria shody a příklady) |
— | — | — | 1521, 1522, 1590 |
RFC 4288 | prosince 2005 | Specifikace typu média a postupy registrace | — | — | — | 2048 |
RFC 4289 | prosince 2005 | MIME část čtvrtá: Postupy registrace | — | — | — | 2048 |
RFC 4855 | února 2007 | Typ média Registrace formátů užitečného zatížení RTP | — | — | — |
URI | Schémata|
---|---|
Oficiální | |
neoficiální |