Максимальная длина поля заголовка MIME Content-Type?

Я просто разрабатываю схему для таблицы базы данных, которая будет содержать детали вложений электронной почты - их размер в байтах, имя файла и тип содержимого (например, «изображение / jpg», «аудио / mp3» и т. д.).

Кто-нибудь знает максимальную длину, которую я могу ожидать от типа контента?

Отправка электронной почты с помощью Python менее чем за 1 минуту
Отправка электронной почты с помощью Python менее чем за 1 минуту
Отправка электронной почты с помощью Python - это удобный способ автоматизировать процесс отправки электронных писем. Это может быть полезно для...
38
0
17 742
3
Перейти к ответу Данный вопрос помечен как решенный

Ответы 3

У нас есть система SaaS, которая позволяет пользователям загружать файлы. Изначально мы спроектировали его для хранения типов MIME до 50 символов. За последние несколько дней мы видели несколько попыток загрузки 71-байтовых типов. Итак, мы меняем на 250. 100 казались "хорошими", но это всего лишь на несколько больше, чем максимальное значение, которое мы наблюдаем сейчас. 500 кажется глупым, поэтому выбран 250.

Какие файлы имеют такую ​​длину?

Pithikos 28.04.2020 13:33

"application / vnd.openxmlformats-officedocument.wordprocessin‌ gml.document"

Walden Leverich 29.04.2020 19:01
Ответ принят как подходящий

Надеюсь, я правильно прочитал, но похоже, что максимальная длина составляет 127/127 или 255 Всего.

RFC 4288 имеет ссылку в 4.2 (стр. 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 / "!" /
                   "#" / "$" / "&" / "." /
                   "+" / "-" / "^" / "_"

Мне неясно, может ли суффикс + добавляться после 127, но, похоже, нет.

Я был бы рад, если бы @ ian-nelson (или @speaker) мог выделить в этом ответе число 255.

Łukasz Siwiński 18.02.2013 18:37

@ ŁukaszSiwiński нравится?

Ian Nelson 18.02.2013 19:44

@lankymart сейчас.

Ian Nelson 14.03.2014 13:07

В RFC 6838, который является последним стандартом и отменяет RFC4288, есть следующее утверждение.

«Также обратите внимание, что хотя этот синтаксис допускает имена длиной до 127 символов, ограничения реализации могут сделать такие длинные имена проблематичными. По этой причине <type-name> и <subtype-name> ДОЛЖНЫ быть ограничены 64 символами».

64 + 1 + 64 = 129.

Но я подозреваю, что стандарт должен означать 63 + 1 + 63 = 127.

ссылка: https://tools.ietf.org/html/rfc6838#section-4.2

Было бы удобно разместить ссылку на страницы RFC.

transilvlad 10.05.2016 16:45

Другие вопросы по теме