java 163邮件发送 ssl协议失败_java发送邮件遇到的问题

java 163邮件发送 ssl协议失败_java发送邮件遇到的问题今天尝试用java.mail.jar来实现Java程序发送邮件的功能,遇到一些问题:一、当使用QQ邮箱向网易邮箱发邮件时:问题1:530错误,需要建立安全连接,报错如下:javax.mail.AuthenticationFailedException:530Error:Asecureconnectionisrequiered(suchasssl).Moreinformatio…

今天尝试用java.mail.jar来实现Java程序发送邮件的功能,遇到一些问题:

一、当使用QQ邮箱向网易邮箱发邮件时:

问题1:530错误,需要建立安全连接,报错如下:

javax.mail.AuthenticationFailedException: 530 Error: A secure connection is requiered(such as ssl). More information at http://service.mail.qq.com/cgi-bin/help?id=28

解决:我在原来的初始化代码中加上SSL相关代码即可解决此错误,如下前四句代码:

private void init(String name, String pass, String smtpHostName) throws GeneralSecurityException{

//开启ssl加密,如果没有ssl加密,会报530错误

MailSSLSocketFactory sf = new MailSSLSocketFactory();

sf.setTrustAllHosts(true);

prop.put(“mail.smtp.ssl.enable”, “true”);

prop.put(“mail.smtp.ssl.socketFactory”, sf);

prop.setProperty(“mail.smtp.auth”, “true”);

prop.setProperty(“mail.smtp.host”, smtpHostName);

authticator = new MailAuthticator(name, pass);

session = Session.getInstance(prop, authticator);

}

问题2:535错误,身份认证失败。报错如下:

javax.mail.AuthenticationFailedException: 535 Error:  Authentication failed: More information at http://service.mail.qq.com/cgi-bin/help?subtype=1&&id=28&&no=1001256

原因:我用QQ邮箱的密码作为发送者认证密码,其实这里应该要用腾讯邮箱给的授权码。

解决:我的具体操作如下:

登陆我的QQ邮箱—设置—账户,找到POP3/IMAP…..,我暂时是将前两项服务开启,开启时需要验证,验证成功就可以获得授权码了,然后用授权码替代QQ邮箱的密码即可解决此错误。ps:因为我这里开启了两个服务,所以得到了两个授权码,我试过了用任意一个都可以。

db6531359b4fde8f7b01df8969d0e7b7.png

ps:我在遇到这个问题2后,看到网上有在人说要把服务器改成:smtp.exmail.qq.com,我的之前是smtp.qq.com。所以我就改成了smtp.exmail.qq.com,但问题并没有解决。我最后是在smtp.qq.com的配置下,进行上面的步骤才成功的。成功之后我又改成smtp.exmail.qq.com试了一下,发现还是报535错误。所以最后我的是smtp.qq.com

二、用网易邮箱向QQ邮箱发送邮件时:

1、即使不加上SSL安全连接那四句代码,也能成功发送

2、也需要用授权码代替发送者的密码,授权码的获取过程与QQ邮箱的类似:登陆网易邮箱–设置–POP3/SMTP/IMAP–开启相关服务–验证–获取认证码。注意网易的认证码是自己设置的,而QQ邮箱的则是它自己生成的。

今天的文章java 163邮件发送 ssl协议失败_java发送邮件遇到的问题分享到此就结束了,感谢您的阅读,如果确实帮到您,您可以动动手指转发给其他人。

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
如需转载请保留出处:https://bianchenghao.cn/26437.html

(0)
编程小号编程小号

相关推荐

发表回复

您的电子邮箱地址不会被公开。 必填项已用*标注