application/octet-stream MIME 类型是否允许字符集参数

Is the charset parameter allowed on application/octet-stream MIME type

我正在做一个项目,我需要通过电子邮件而不是 http 发送请求, 为了防止电子邮件服务器或客户端弄乱 body(尤其是网址),我在 SMTP 请求中将 Content-Type header 设置为 application/octet-stream 而不是 text/plain .
但是内容实际上是纯文本,所以我还指定了 ;charset=UTF-8.
查看 RFC 似乎 charset 参数仅允许用于 text/* 类型,但是我还发现许多示例将 charsetapplication/* 类型一起使用。

现在我想知道,application/octet-stream; charset=UTF-8 是有效的 MIME 类型吗?

作为 application/octet-stream 定义 (IANA-RFC) doesn't define a charset for this applicationtype and the definition for application/json (IANA-RFC) 一种更常用的 mimetype 包括注释:

No "charset" parameter is defined for this registration.
Adding one really has no effect on compliant recipients. 

我强烈建议假设该声明不仅适用于这种特殊情况,而且适用于其他 application/* 没有定义 charset

所以我不能说传递未定义的参数是否有效,但 RFC 明确暗示 application/octet-streamcharset 参数(以及其他 application/* 没有定义 charset) 无效。