Serwisanci dostępni teraz · czynne całą dobę, także w weekendy i świętaWarszawa i okolice · dojazd bezpłatny
Darmowa diagnoza laptopa
Darmowa diagnoza laptopa
Dojazd do klienta bezpłatnie
Dojazd do klienta bezpłatnie
Laptopy zastępcze bezpłatnie
Laptopy zastępcze bezpłatnie
Odbiór i zwrot sprzętu bezpłatnie
Odbiór i zwrot sprzętu bezpłatnie

MIME multipart

Termin Definicja
MIME multipart

MIME multipart to struktura wiadomości złożonej z kilku części, np. wersji tekstowej, HTML i załączników.

Budowa wiadomości MIME multipart

MIME multipart to sposób zapisania jednej wiadomości jako uporządkowanego zbioru kilku niezależnych części. Informacja o takim układzie znajduje się w nagłówku Content-Type, na przykład Content-Type: multipart/mixed; boundary="granica-123". Typ multipart nie opisuje konkretnej treści, lecz reguły jej podziału. Parametr boundary wskazuje ciąg znaków rozdzielający poszczególne części. Ta sama wartość granicy jest używana przy rozpoczęciu każdej części, a zakończenie całej konstrukcji oznacza się dodatkowym ciągiem -- na końcu granicy.

Standard MIME opisują między innymi dokumenty RFC 2045 i RFC 2046. Każda część multipart ma własne nagłówki, takie jak Content-Type, Content-Disposition lub Content-Transfer-Encoding, a po pustej linii następuje jej właściwa zawartość. Części są rozdzielane sekwencjami końca linii zgodnymi z formatem wiadomości internetowych, czyli zwykle znakami CRLF. Konstrukcja może zawierać tekst, kod HTML, obraz, dokument albo inną wiadomość MIME.

Multipart/alternative, mixed i related

W poczcie elektronicznej często stosuje się multipart/alternative. Umieszcza się w nim kilka reprezentacji tej samej informacji, zazwyczaj zwykły tekst oraz HTML. Odbiorca powinien wybrać ostatnią wersję, którą potrafi poprawnie obsłużyć, dlatego część tekstowa zwykle znajduje się przed częścią HTML. Nie są to dwa niezależne komunikaty, lecz alternatywne sposoby przedstawienia tej samej treści.

Typ multipart/mixed służy do połączenia głównej treści z dodatkowymi elementami, na przykład załącznikami. Z kolei multipart/related wiąże dokument z zasobami potrzebnymi do jego wyświetlenia, takimi jak obrazy przywołane w kodzie HTML. W takim układzie odwołanie do obrazu może używać identyfikatora cid:, który odpowiada nagłówkowi Content-ID konkretnej części. W praktyce jedna wiadomość może mieć zagnieżdżone struktury, na przykład multipart/mixed zawierający część multipart/alternative oraz załącznik.

Rozdzielanie części i kodowanie danych

Granica określona parametrem boundary nie powinna występować przypadkowo w danych części, ponieważ mogłaby zostać odczytana jako separator. Każdy element jest analizowany osobno: program odczytuje jego nagłówki, ustala typ danych, a następnie przetwarza ciało zgodnie z informacją o kodowaniu. Załączniki binarne są często przesyłane z użyciem Content-Transfer-Encoding: base64. Kodowanie base64 zmienia dane binarne na znaki tekstowe, ale zwiększa ich objętość mniej więcej o jedną trzecią.

Warto odróżnić kodowanie transportowe MIME od kodowania znaków dokumentu. Nagłówek Content-Transfer-Encoding informuje, jak odtworzyć bajty danej części, natomiast parametr charset, na przykład charset=UTF-8, opisuje sposób interpretacji znaków tekstowych po ich odkodowaniu. Błąd w granicy, brak końcowego separatora, uszkodzony zapis base64 albo niezgodny charset może sprawić, że klient pocztowy pokaże surowe nagłówki, pominie załącznik lub wyświetli polskie znaki jako nieprawidłowe symbole.

MIME multipart w poczcie, formularzach i diagnostyce

Ta sama zasada jest używana poza pocztą elektroniczną. W protokole HTTP formularze przesyłające pliki mogą korzystać z typu multipart/form-data, zdefiniowanego w RFC 7578. Każde pole formularza stanowi osobną część, a plik może mieć nagłówki Content-Disposition z nazwą pola i nazwą pliku. Serwer musi odczytać granicę z nagłówka żądania, rozdzielić części i prawidłowo zinterpretować ich zawartość. Samo rozszerzenie pliku nie zastępuje informacji zapisanej w nagłówku Content-Type.

Podczas naprawy problemu z pocztą lub aplikacją internetową warto sprawdzić pełne nagłówki wiadomości, kolejność części, wartość parametru boundary, obecność pustej linii między nagłówkami a treścią oraz sposób kodowania załącznika. Pomocne jest porównanie wiadomości wyświetlanej poprawnie z wiadomością uszkodzoną i przeanalizowanie ich w edytorze pokazującym niewidoczne znaki. Warszawskie Pogotowie Komputerowe zajmuje się profesjonalną naprawą laptopów i komputerów PC, w tym diagnozowaniem problemów z programami pocztowymi, przeglądarkami oraz obsługą załączników.

+48 22 100 48 29Zadzwoń teraz · serwisant w 1 godzinę