当前位置:   article > 正文

java发邮件出现A secure connection is requiered(such as ssl)错误_mail module secureconnection

mail module secureconnection

我用的是QQ邮箱,使用的是java提供的发邮件API JavaMail
完整的错误提示是Caused by: 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

AuthenticationFailedException就是身份验证失败异常,说需要一个安全链接(例如ssl),后面的地址是qq邮箱的帮助中心,上网搜了一下,原来第三方客户端登录邮箱时需要用专门的授权码登录。
授权码de获取
打开QQ邮箱的设置-账户,找到POP3/IMAP/SMTP/Exchange/CardDAV/CalDAV服务
这里写图片描述
点击开启 ,我这里已经开启了
之后就会得到一个十六位的授权码,用这个授权码替换你的登录密码

本以为问题已经解决,没想到还是报错,再去搜发现还要开启ssl加密,就是加上下面的代码,这里没搞懂这个ssl是什么,但问题是解决了,成功发送邮件。

        //开启ssl加密
        MailSSLSocketFactory sf = new MailSSLSocketFactory();
        sf.setTrustAllHosts(true);
        props.put("mail.smtp.ssl.enable",true);
        props.put("mail.smtp.ssl.socketFactory",sf);
  • 1
  • 2
  • 3
  • 4
  • 5
声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/Gausst松鼠会/article/detail/624516
推荐阅读
相关标签
  

闽ICP备14008679号