2

我通过 Cloudbees 注册了 Sendgrid。我正在尝试通过具有以下属性的 sendgrid SMTP API 发送电子邮件:

 port=587 
 host=smtp.sendgrid.net 
 username=[username generated by cloudbees, cloudbees_[myid] ]
 password=[the password i login to cloudbees grandcentral]

并收到以下异常。

Caused by: javax.mail.AuthenticationFailedException: 535 Authentication failed: Bad username / password
at com.sun.mail.smtp.SMTPTransport$Authenticator.authenticate(SMTPTransport.java:823) 
at com.sun.mail.smtp.SMTPTransport.authenticate(SMTPTransport.java:756) 
at com.sun.mail.smtp.SMTPTransport.protocolConnect(SMTPTransport.java:673) 
at javax.mail.Service.connect(Service.java:295) 
at org.springframework.mail.javamail.JavaMailSenderImpl.doSend(JavaMailSenderImpl.java:389) 

... 38 更多

密码应该是什么?用户名错了吗?

提前致谢, 艾尔

4

2 回答 2

1

不要使用您的 cloudbees 凭据连接到 sendgrid,而是使用运行时注入的凭据(阅读http://wiki.cloudbees.com/bin/view/RUN/SendGrid)。您还应该使用资源绑定将 Sendgrid 作为 JNDI JavaMail 会话直接注入,因此您的设置更加简单

于 2013-04-26T05:00:48.620 回答
1

您使用错误的凭据登录。Cloudbees 将您的 SendGrid 用户名和密码存储在环境变量中。按如下方式访问它们:

host = System.getProperty("SENDGRID_SMTP_HOST");
username = System.getProperty("SENDGRID_USERNAME");
password = System.getProperty("SENDGRID_PASSWORD");
于 2013-04-27T14:11:46.497 回答