1、 使用java Mail 发送邮件, 出现了如下异常:
535 Error: authentication failed
————这是SMTP身份验证出错了。现在大多数的邮箱提供的发送邮件服务器都需要身份验证。
因此,您需要:
请您检查您的帐户设置, 在"邮件服务器","SMTP服务器需要身份验证"项上打勾。
2、 应对方案:
在用户名和密码都没有问题的情况下,如果代码抛出javax.mail.AuthenticationFailedException异常,先用OutLook测试一下看能否进行正常的收发邮件,有时信箱如果是新注册的话,邮件的服务商默认刚注册的帐号是不能使用pop3的。例如163.com在我进行代码测试时,刚刚注册的帐号是没有权限使用该功能的,所以就会抛出上述的异常。 还有,要注意from的email地址和Authenticator类中验证的用户名是一致的,要不也会出错.
————
“有时信箱如果是新注册的话,邮件的服务商默认刚注册的帐号是不能使用pop3的” 同意!
————————-我的总结————————————
1、 首先你要在你对应的邮箱中设置开启smtp/pop3服务器;
2、 据我目前试验得知126是不支持开启功能, qq与sina的可以。
^_^ ^_^ 刚刚又在126的帮助中找到了如下通告:
目前免费邮箱新注册的用户不支持直接开通smtp、pop3的服务,之前已开通客户端功能的老用户不受影响。如果需要使用该功能,您可开通增值服务邮箱伴侣或随身邮 ,即可同时获取poo功能。或者您可以选择 VIP邮箱。另外我们也会陆续通过活动、“邮箱会员”等方式向有需要的用户提供该项服务,敬请关注。感谢您使用我们的产品!
所以呀, 以后有问题先不要没有方向性地到互联网搜索, 先到相关官网去了解情况不失为一种更有效率的做法!
还有就是有时是需要:继承Authenticator写认证类 (尽管我在试验过程中没有写验证类也成功地通过验证了)