引用博客园大佬恋在那时:https://www.cnblogs.com/zfding/p/8324784.html
写在这里怕日后忘了再犯错误。
553 authentication is required:这个错误的意思是你必须需要认证。
也就是说,你连接smtp服务器的时候必须使用密码来连接:下面代码红色那句
代码:
@Override
public void run() {
try {
log.info("邮件创建开始了。。。。");
//1.创建session
Session session = Session.getInstance(prop);
//2.开启session的debug模式,可以查看出email发送的情况
session.setDebug(true);
//3.连接发件服务器
Transport trans = session.getTransport();
trans.connect(prop.getProperty("mail.host"),prop.getProperty("mail.name"), prop.getProperty("mail.password"));
//4.创建邮件
Message message = createMessageMail(session);
//发送邮件
trans.sendMessage(message, message.getAllRecipients());
trans.close();
} catch (Exception e) {
log.error("创建邮件发生异常:异常为{}",e.toString());
e.printStackTrace();
}
}
535 Error:authentication failed:这个错误就是认证失败!
相信很多的同学明明用户名和密码填的是对的,就是说认证失败!
我刚开始也是,我简直都要气的吐血了,明明什么都是对的,就是连接不上。事实上是就算你气的再厉害还是没用的
因为这里的密码不是你邮箱的密码,是你的授权码!!!
授权码和你邮箱的密码是不一样的,关于获取授权码大家可以登录到邮件的官网:看我的截图
好了,这里大家的邮件基本是都可以发送啦!