使用java邮件api

时间:2013-04-08 07:43:12

标签: java javamail sendmail

我正在使用Java mail api以smtp.gmail.com作为主机发送邮件。当我使用下面的代码并启用它时,它工作正常,但如果我禁用它,它会抛出Must issue a STARTTLS command first错误。

       mailProperties.put("mail.smtp.starttls.enable", "true");

这是什么意思?所以要连接到gmail我应该总是设置这个标志吗?如果我们始终启用安全连接(tls或ssl),还要连接到任何邮件服务器?

2 个答案:

答案 0 :(得分:2)

GMail smtp服务器似乎需要TLS身份验证。 (见here)。这意味着如果您未启用TLS,服务器将拒绝您的查询。

是的,要连接到 GMail ,您需要启用TLS。对于普通邮件服务器,通常没有必要。

答案 1 :(得分:-2)

首先在设置/使用客户端的设备上的浏览器中登录Gmail帐户 转到这里并启用“不太安全”的访问权限#34;应用:https://www.google.com/settings/security/lesssecureapps 然后转到此处:https://accounts.google.com/b/0/DisplayUnlockCaptcha,然后点击继续。 然后马上回到你的客户端再试一次。