创建MIME边界的规则用于邮件附件

问题描述

|| 我正在使用PHP mail()函数发送带有附件的邮件。 因此,PHP源代码包含一个边界,用于定义附件的开始和结束位置。 因此,问题是:是否存在创建此MIME边界的规则(仅允许使用字母和数字的示例) 我仍然知道这个问题->哪些规则适用于MIME边界? 是否有必要从HASH创建边界? 因为以下内容也适用:
$headers .= \"Content-Type: multipart/related; boundary=\\\"abc\\\"\";
[...]
$msg .=\"--abc\\n\";
[...]
$msg .= \"--abc--\\n\\n\"; 
是否有原因,为什么MIME边界应为唯一值? ..i在Internet上找不到任何信息。 谢谢!     

解决方法

        没有什么说边界标记必须是哈希,但是它们必须是唯一的。想一想,如果您要插入的实际电子邮件文本在某处自然包含单词“ 1”,将会发生什么情况。 您的电子邮件如下所示:
--abc--    <--actual boundary
This is my email. There are many like it,but this one is mine.
Now for some reason I\'m going to put in a line that shouldn\'t be there
--abc--    <--part of the email
There it was. Did you see it? No,you didn\'t,because the mail client saw a boundary
line and sliced it out. Because of this extra boundary,now the email has 2 sections,instead of 1.
--abc--    <--actual boundary
因此...邮件客户端如何知道电子邮件的组成部分以及“开销”是什么?这就是为什么要使用唯一的边界。 哈希是最简单的方法。在极端情况下,电子邮件文本不太可能恰好在可能被视为边界标记的确切位置包含其自己的哈希值。     ,        MIME边界应该不太可能出现在用户的实际消息中。哈希是一个很好的选择,因为它们又长又独特。唯一性还使某人很难弄清楚您使用的边界并将其包括在消息中,从而弄乱了消息。但是,我找不到任何要求边界是唯一的要求,只是整个行必须少于70个字符。     

相关问答

依赖报错 idea导入项目后依赖报错,解决方案:https://blog....
错误1:代码生成器依赖和mybatis依赖冲突 启动项目时报错如下...
错误1:gradle项目控制台输出为乱码 # 解决方案:https://bl...
错误还原:在查询的过程中,传入的workType为0时,该条件不起...
报错如下,gcc版本太低 ^ server.c:5346:31: 错误:‘struct...