记录一次邮件异常 AuthenticationFailedException
头痛,老系统出个问题,客户天天问(跟我有个鸡儿关系,又不是我干得)
客户:怎么肥四?你搞了什么?怎么邮件不发了?
我:暂时不清楚,等会儿,查一下
这个升级的项目都一个月没碰了,绝了
经过日志查看,发现发送邮件时出现下面异常
org.springframework.mail.MailAuthenticationException: Authentication failed; nested exception is javax.mail.AuthenticationFailedException
根据该异常基本就已经确定问题了,那就是邮件系统认证问题
经检查
mail.smtp.auth值为true,表明开启了smtp服务的认证问题,
那就检查下呗,为什么会出现这个问题
客户使用的是163邮箱,发送的话是用smtp服务发的,这样的话,就检查下客户的邮箱设置问题
打开设置后,我惊了,这是个啥?smtp/pop3服务都没开,认证开着,能发才是见鬼了呢
然后将客户的POP3/SMTP服务IMAP/SMTP开开,记录下给的授权码
这个授权码只显示一次,后续是看不到的,不过可以新增授权码
这里有一个问题,就是,开启了这个授权码之后,程序中,必须将密码变更为这个授权码,不再是邮箱的密码,不然的话,还是发送不出去
然后将授权码更换掉,重新部署服务,发送正常了,客户开心的像个孩子(PS:心好累)
问题解决,回家啃馒头去