javax.mail发自类似“的地址”;abc@deg-.com“;不起作用
我使用的是javax.mail.1.4.4,我已经将from address设置为javax.mail发自类似“的地址”;abc@deg-.com“;不起作用,java,jakarta-mail,Java,Jakarta Mail,我使用的是javax.mail.1.4.4,我已经将from address设置为 **MimeMessage mime = new MimeMessage(session) mime.from = new InternetAddress(msg.fromAddress)** 当我试着把fromaddress作为“abc@deg-.com“它将发送以下错误 **MAIL FROM:<abc@deg-.com> 501 5.1.7 Bad sender address syn
**MimeMessage mime = new MimeMessage(session)
mime.from = new InternetAddress(msg.fromAddress)**
当我试着把fromaddress作为“abc@deg-.com“它将发送以下错误
**MAIL FROM:<abc@deg-.com>
501 5.1.7 Bad sender address syntax
DEBUG SMTP: got response code 501, with response: 501 5.1.7 Bad sender address syntax
RSET
250 2.0.0 Ok
DEBUG SMTP: MessagingException while sending**
**来自以下地址的邮件:
501 5.1.7错误的发件人地址语法
调试SMTP:获取响应代码501,响应:501 5.1.7错误的发件人地址语法
RSET
250 2.0.0正常
发送时调试SMTP:MessaginException**
在其他情况下,比如“abc@def.com“它工作正常
有人知道如何允许邮件地址,比如“abc@deg-.com“?deg-.com不是有效的域名,这可能就是您的邮件服务器拒绝它的原因。根据,域名只能是格式
<domain> ::= <subdomain> | " "
<subdomain> ::= <label> | <subdomain> "." <label>
<label> ::= <letter> [ [ <ldh-str> ] <let-dig> ]
<ldh-str> ::= <let-dig-hyp> | <let-dig-hyp> <ldh-str>
<let-dig-hyp> ::= <let-dig> | "-"
<let-dig> ::= <letter> | <digit>
:=|“”
::= | "."
::= [ [ ] ]
::= |
::= | "-"
::= |
所以域名的最后一个字符(不包括tld)不能是-
,只能是字母或数字
它与javax.mail无关,这样的域名不应该存在。这看起来更像是SMTP服务器在抱怨,而不是JavaMail。如果服务器允许它(这可能不是一个好主意,取决于可接受的邮件地址),那么JavaMail也可能允许它。域名部分不能以破折号结尾。