Večina e-poštnih sporočil, poslanih danes, je formatiranih MIME (večnamenske internetne poštne razširitve). To omogoča pošiljanje e-pošte z navadnim besedilom in različicami obogatenega besedila/HTML, vgrajenimi slikami in prilogami. Razširitve MIME lahko dodate sporočilu v standardnem formatu RFC/822, tako da se doseže združljivost s starejšimi poštnimi sistemi.
Korak 1
Naložite vsebino e-poštnega sporočila.
Video dneva
2. korak
Preverite glavo "Content-Type". Če je vrsta vsebine večdelna (tj. "večdelna/mešana", "večdelna/alternativna" itd.), bo sporočilo imelo več razdelkov, ki jih je treba razčleniti. Če je vrsta vsebine večdelna, nadaljujte s spodnjimi koraki.
3. korak
Glava Content-Type mora vsebovati edinstven niz, ki ga uporablja koda, ki je ustvarila sporočilo MIME, da označi meje dela MIME. Primer:
Vrsta vsebine: večdelni/mešani; boundary="part_c7161025_fe8a_45f4_83ef_6befcfa5d021"
Mejni niz v tem primeru je "part_c7161025_fe8a_45f4_83ef_6befcfa5d021".
4. korak
Vsak del MIME bo ločen z mejnim nizom, pred katerim sta dve pomišljaji ("--") v prazni vrstici. Sporočilo boste morali skenirati vrstico za vrstico in iskati meje dela. Vse besedilo med mejami
razen končnega CR/LF je del tega dela MIME.Pomembno: zadnji del MIME se bo končal z mejnim nizom, ki mu sledita še dve pomišljaji.
Primer:
--part_c7161025_fe8a_45f4_83ef_6befcfa5d021 Prvi del MIME.
--part_c7161025_fe8a_45f4_83ef_6befcfa5d021 Drugi del MIME
--part_c7161025_fe8a_45f4_83ef_6befcfa5d021 Zadnji del MIME.
--part_c7161025_fe8a_45f4_83ef_6befcfa5d021--
5. korak
Nato je treba vsak del MIME razčleniti. Oblika vsakega dela MIME je podobna izvirnemu sporočilu v formatu RFC/822. Vseboval bo vrsto glav, ki jim bo sledila prazna vrstica, nato pa telesni podatki.
6. korak
Del MIME je lahko tudi večdelni, z lastno glavo "Content-Type" in mejnim nizom. Vaša koda mora rekurzivno razčleniti dele MIME, dokler ne doseže podrejenih vozlišč.
7. korak
Del MIME je lahko preprosto binarna priloga. V tem primeru bo običajno podana glava Filename skupaj s kodiranjem prenosa. BASE64 je priljubljena vrsta kodiranja. V tem primeru mora biti celotno telo dela MIME dekodirano BASE64. Kot primer je tukaj prvih nekaj vrstic priložene slike JPG:
=NextPart_003_01C755EF.43F2628D Vrsta vsebine: slika/jpeg; name="testimage.jpg" Content-Transfer-Encoding: base64 Opis vsebine: testimage.jpg Content-Disposition: priloga; filename="testimage.jpg"
/9j/4AAQSkZJRgABAQEAYABgAAD/2wBDAAgGBgcGBQgHBwcJCQgKDBQNDAsLDBkSEw8UHRofHh0a HBwgJC4nICIsIxwcKDcpLDAxNDQ0Hyc5PTgyPC4zNDL/2wBDAQkJCQwLDBgNDRgyIRwhMjIyMjIy MjIyMjIyMjIyMjIyMjIyMjIyMjIyMjImjMIyMjIyMjMJMJYMJMJMJYMJMJMJYMJMJMJYMJMJMJMJMJYMJMJMJYMJMJMJYMJYMJMJM AhEBAxEB/8QAHwAAAQUBAQEBAQEAAAAAAAAAAAAECAwQFBgcICQoL/8QAtRAAAgEDAwIEAwUFBAQA
8. korak
Telo sporočila HTML mora biti v razdelku MIME z ContentType: Text/Html, znotraj razdelka ContentType: Multipart/Alternative MIME.
9. korak
Telo golega besedila sporočila mora biti v razdelku MIME z ContentType: Besedilo/navadno, znotraj razdelka ContentType: Večdelni/Alternativni MIME.
Stvari, ki jih boste potrebovali
Poznavanje računalniškega jezika (npr. C++, C#, VB itd.).
Osnovno poznavanje oblike e-poštnega sporočila v formatu RFC/822.
Nasvet
Oglejte si RFC 822 http://www.ietf.org/rfc/rfc0822.txt? številka = 822 in RFC 1341 http://www.ietf.org/rfc/rfc1341.txt? številka=1341 za več informacij. Če kodirate v C#, je na voljo odlična brezplačna knjižnica http://www.codeproject.com/csharp/mime_project.asp.