电子邮件地址中的方括号字符



当我们收到包含收件人InternetAddresses方括号的MimeMessage时,当我们调用MimeMessage.getAllRecipients()时,我们会得到'javax.mail.internet.AddressException: Local address contains illegal character in string'。

下面的电子邮件地址是我们得到上述异常的一个例子:

"ABC NAME-DEM-SAST1" <ABCNAME-DEM-SAST1[001-SAST1@domain.com]>

上述示例地址是否为实际有效的电子邮件地址?如果是,为什么不能从中创建InternetAddress?

例如,互联网地址添加 = 新的互联网地址( ""ABC NAME-DEM-SAST1" <ABCNAME-DEM-SAST1[001-SAST1@domain.com]>" , 假);

我看了一下 Javamail 问题,邮件地址中的字符问题以获得答案,但无济于事。

我正在使用javamail 1.4,JVM在Linux主机系统上运行。

对这个问题的任何见解将不胜感激!

问候下午。

此解释表明"["和"]"是电子邮件地址中的无效字符,除非用于绑定域文本(例如 [192.1.0.0])。如果示例地址应显示名称和相应的地址,则正确的语法为

"ABC NAME-DEM-SAST1" <001-SAST1@domain.com>

Microsoft局使用方括号来标记一次性地址(http://msdn.microsoft.com/en-us/library/cc842281.aspx),但这似乎是非标准化的,也与给定的示例不匹配。

电子邮件地址 RFC。

最新更新