禁用 javamail 电子邮件地址验证

Disable javamail email address validation

我希望我的应用程序具有最低限度的 'To' 电子邮件地址验证,即只有空字符串被认为是无效的。从我的应用程序角度来看,以下所有字符串都被视为有效的电子邮件地址:

我正在使用 spring-boot-mail starter 来开发我的应用程序,并使用 MimeMessageHelper 来构建邮件消息。当我尝试向这些地址发送电子邮件时,java mail api 会发出 sendFailedException Invalid Address。从我的挖掘来看,似乎已经内置了电子邮件地址验证。有什么方法可以禁用电子邮件地址验证,以便我的应用程序仍然向这些地址发送电子邮件?


自@Bill Shannon 以来的更新:-
我已经更新了我的属性文件:
spring.mail.properties.mail.mime.address.strict=假

我仍然收到错误:

org.springframework.mail.MailSendException: Failed messages: javax.mail.SendFailedException: Invalid Addresses; nested exception is: com.sun.mail.smtp.SMTPAddressFailedException: 501 5.1.3 Invalid address

我不确定这是否与您@Bill 提到的我传递会话属性的方式有关,或者来自 exhange 服务器地址验证(我们可以从错误中分辨出来吗?)。


与交换器服务器管理员核实后更新。

有效。收到的错误实际上是由电子邮件服务器发出的。您必须让您的电子邮件服务器禁用电子邮件地址验证才能使其正常工作。

尝试将会话 属性 mail.mime.address.strict 设置为 "false"。不过,是否接受这些地址取决于您的邮件服务器。