使用gmail smtp服务器和javamail在java中发送没有身份验证的电子邮件

时间:2014-10-10 13:35:45

标签: java email javamail

我使用Javamail api和gmail smtp服务器在java中发送邮件而不提供密码。我使用下面的代码。这里我使用的是javax.mail jar文件

     Properties props= new Properties();

     props.put("mail.smtp.host", "smtp.gmail.com");
     props.put("mail.smtp.port", 587);
     props.put("mail.transport.protocal", "smtps");
     //Put below to false, if no https is needed
     props.put("mail.smtp.STARTTLS.enable", "false");
     props.put("mail.smtp.auth", "false");

     Session session = Session.getInstance(props);

我收到以下错误

      Must issue a STARTTLS command first. b4sm3005855pdh.2 - gsmtp

实施代码有什么问题吗?是否可以在没有密码的情况下实施?请任何人帮助我

2 个答案:

答案 0 :(得分:1)

首先,该属性的名称是“mail.smtp.starttls.enable”。

其次,不,您无法先通过Gmail发送邮件,而无需先进行身份验证,例如使用您的密码。

答案 1 :(得分:0)

我认为这是不可能的。如果它发生,任何机构都可以滥用任何其他邮件地址。