【发布时间】:2010-09-06 09:34:13
【问题描述】:
我只是为一个数据库表设计架构,该表将保存电子邮件附件的详细信息——它们的字节大小、文件名和内容类型(即“image/jpg”、“audio/mp3”等)。
有人知道我可以预期内容类型的最大长度吗?
【问题讨论】:
我只是为一个数据库表设计架构,该表将保存电子邮件附件的详细信息——它们的字节大小、文件名和内容类型(即“image/jpg”、“audio/mp3”等)。
有人知道我可以预期内容类型的最大长度吗?
【问题讨论】:
我希望我没有看错,但看起来长度最大为 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 之后,但似乎不是。
【讨论】:
在最新的标准RFC 6838中,已经废弃RFC4288,有如下声明。
“另请注意,虽然此语法允许名称最多 127 个字符,但实施限制可能会使此类长名称产生问题。因此,<type-name> 和 <subtype-name> 应限制为 64 个字符。”
64+1+64 = 129。
但我怀疑标准应该是 63+1+63=127。
【讨论】:
我们运行一个允许用户上传文件的 SaaS 系统。我们最初将它设计为存储最多 50 个字符的 MIME 类型。在过去的几天里,我们看到了几次上传 71 字节类型的尝试。因此,我们将更改为 250。100 似乎“不错”,但仅比我们现在看到的最大值多一些。 500看起来很傻,所以选择了250。
【讨论】: