MIME Content-Type 头域的最大长度是多少?

41

我只是在设计一个用于存储电子邮件附件详细信息的数据库表结构 - 包括文件大小、文件名和内容类型(例如:"image/jpg"、"audio/mp3"等)。

有人知道我可以期望内容类型的最大长度是多少吗?

3个回答

49

我希望我没有误读,但是看起来长度最大为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,但看起来好像不能。


1
如果@ian-nelson(或@speaker)能够在这个答案中强调数字255,我会很高兴。 - Łukasz Siwiński
2
@ŁukaszSiwiński 像这样吗? - Ian Nelson
1
@lankymart 现在可以了。 - Ian Nelson

8
在最新的标准RFC 6838中,它废除了RFC4288并包含以下声明。需要注意的是,虽然该语法允许长达127个字符的名称,但实现限制可能会使这些较长的名称成为问题。因此,和应限制在64个字符内。64 + 1 + 64 = 129。但我怀疑该标准应该是指63 + 1 + 63 = 127。链接:https://www.rfc-editor.org/rfc/rfc6838#section-4.2

方便的话,可以链接到RFC页面。 - transilvlad

2
我们运行一个SaaS系统,允许用户上传文件。我们最初设计它来存储最多50个字符的MIME类型。在过去的几天里,我们看到了几次尝试上传71字节类型的情况。因此,我们将更改为250。100似乎“不错”,但它只比我们现在看到的最大值多几个。500看起来很荒谬,所以我们选择了250。

有哪些类型的文件具有那个长度? - Pithikos
3
"application/vnd.openxmlformats-officedocument.wordprocessingml.document" - Walden Leverich

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接