Maksymalna długość pola nagłówka Content-Type MIME?


31

Po prostu projektuję schemat dla tabeli bazy danych, która będzie zawierała szczegóły załączników wiadomości e-mail - ich rozmiar w bajtach, nazwę pliku i typ zawartości (np. "Image/jpg", "audio/mp3", itp.).

Czy ktokolwiek zna maksymalną długość, jakiej mogę oczekiwać typu zawartości?

42

Mam nadzieję, że źle odczytałem, ale wygląda na to, że długość wynosi maksymalnie 127/127 lub 255 łącznie.

RFC 4288 ma odniesienie w 4.2 (strona 6):

Type and subtype names MUST conform to the following ABNF: 

    type-name = reg-name 
    subtype-name = reg-name 

    reg-name = 1*127reg-name-chars 
    reg-name-chars = ALPHA/DIGIT/"!"/
        "#"/"$"/"&"/"."/
        "+"/"-"/"^"/"_" 

To nie jest dla mnie jasne, czy można dodać przyrostek + obok 127, ale nie pojawia się.

  0

Byłbym rad, gdyby @ ian-Nelson (lub @speaker) mógłby podkreślić numer 255 w tej odpowiedzi. 18 lut. 132013-02-18 14:37:39

+1

@ ŁukaszSiwiński w ten sposób? 18 lut. 132013-02-18 15:44:29

  0

tak, to jest ok, wielkie dzięki! 21 lut. 132013-02-21 23:34:41

  0

@IanNelson Dlaczego nie jest to zaakceptowana odpowiedź? 13 mar. 142014-03-13 20:10:55

+1

@lankymart to jest teraz. 14 mar. 142014-03-14 09:07:26


1

Prowadzimy system SaaS, który umożliwia użytkownikom przesyłanie plików. Pierwotnie zaprojektowaliśmy go do przechowywania typów MIME o długości do 50 znaków. W ciągu ostatnich kilku dni widzieliśmy kilka prób przesłania 71-bajtowych typów. A więc zmieniamy się na 250. 100 wydawało się "dobre", ale to tylko kilka więcej niż maksimum, które widzimy teraz. 500 wydaje się głupim, więc 250 jest wybranym.


5

W RFC 6838, który jest najnowszym standardem i przestarzałym RFC4288, jest następujące oświadczenie.

"Należy pamiętać, że chociaż ta składnia dopuszcza nazwy o długości do 127 znaków, limity implementacji mogą powodować problemy z długimi nazwami, dlatego numery <type-name> i <subtype-name> powinny być ograniczone do 64 znaków."

64 + 1 + 64 = 129.

Ale podejrzewam średnia powinna oznaczać 63 + 1 + 63 = 127.

Link: https://tools.ietf.org/html/rfc6838#section-4.2

  0

Przydałoby się łącze do stron RFC. 10 maj. 162016-05-10 13:45:51