Email 是否可以为“添加另一个Unicode字符?”;“在标志处”;不更改所有电子邮件提供商后端的任何代码?
因此,假设出于某种原因,我们想为at符号添加另一个Unicode字符,并在所有电子邮件提供商中使用它而不是@ 现在我有三个问题:Email 是否可以为“添加另一个Unicode字符?”;“在标志处”;不更改所有电子邮件提供商后端的任何代码?,email,parsing,unicode,Email,Parsing,Unicode,因此,假设出于某种原因,我们想为at符号添加另一个Unicode字符,并在所有电子邮件提供商中使用它而不是@ 现在我有三个问题: 电子邮件提供商如何解析电子邮件,他们是否真的解析书面电子邮件,直到他们看到@并且在解析器中硬编码了@符号的Unicode 不同的服务提供商是否具有不同标准的不同电子邮件解析器,或者是否存在每个电子邮件提供商都使用的标准类型的解析器库 是否可以添加另一个at符号并在电子邮件中使用,而无需更改所有电子邮件提供商的代码 是的,电子邮件地址使用硬连线的@字符进行解析。经过近五
是的,电子邮件地址使用硬连线的
@
字符进行解析。经过近五十年的电子邮件发展,现在有数以百万计的电子邮件处理程序,它们都使用相同的语法。所以你不能改变这个惯例,你的第二个和第三个问题是没有意义的。电子邮件地址由数十种不同的软件解析,而不仅仅是“电子邮件提供商”中的“电子邮件服务器”软件。即使是像电子邮件字段的客户端javascript高亮显示这样琐碎的事情——大约有数万个,也必须进行调整
“@”本身不是字符类-因此,即使它是“unicode分隔符”的唯一“unicode字符类”,谁会编写代码来检查分隔符的字符类?你有没有这样做过,即使是过滤掉标点符号?(这是unicode字符分类的实际使用案例,即使是字符分类,在实际代码中也没有什么用处)
当然,现在您可以自由编写电子邮件客户端代码,在向用户呈现电子邮件数据时将“@”表示为其他任何内容。在内部,如果该软件不使用“@”,即使是用于自己的用途,它也不会与世界上任何其他东西一起工作——从防病毒软件到基于文本的模板
最后,这样的变化几乎与“unicode”本身无关——unicode可以标准化字符——但电子邮件协议是一件独立的事情——通常,保存为“RFC”的一系列文档是各种互联网协议的强制要求,包括IMAP、POP和SMTP——这三种协议用于使电子邮件工作。即使所有这些新的RFC都将以一个新的字符accept代替“@”,也可能需要十多年的时间,直到所有软件(如上所述)都足够兼容以使其能够使用。(是的,所有这些都必须改变)这太宽泛了,不清楚你为什么要问这个问题。完全用其他东西替换SMTP是不可行的,用几乎相同的东西替换它也毫无意义。这里的第一个谬误是假设电子邮件基础设施由一小部分可控制的“电子邮件提供商”拥有和运营。