【问题标题】:Is the charset parameter allowed on application/octet-stream MIME typeapplication/octet-stream MIME 类型是否允许使用 charset 参数
【发布时间】:2021-06-12 16:02:36
【问题描述】:
我正在做一个项目,我需要通过电子邮件而不是 http 发送请求,
为了防止电子邮件服务器或客户端弄乱正文(尤其是 URL),我已将 SMTP 请求中的 Content-Type 标头设置为 application/octet-stream 而不是 text/plain。
然而,内容实际上是纯文本,所以我还指定了;charset=UTF-8。
查看RFC 似乎charset 参数只允许用于text/* 类型,但是我也发现了许多charset 与application/* 类型一起使用的示例。
现在我想知道,application/octet-stream; charset=UTF-8 是一个有效的 MIME 类型吗?
【问题讨论】:
标签:
email
smtp
mime-types
【解决方案1】:
由于application/octet-stream 定义(IANA-RFC) 没有为此应用程序类型定义字符集,而application/json (IANA-RFC) 的定义更常用的mimetype 包含一个注释:
No "charset" parameter is defined for this registration.
Adding one really has no effect on compliant recipients.
我强烈建议假设该语句不仅适用于这种特殊情况,还适用于未定义 charset 的其他 application/*。
所以我不能说传递未定义的参数是否有效,但 RFC 清楚地暗示application/octet-stream 的charset 参数(以及其他未定义application/* 的charset ) 无效。