![](/img/trans.png)
[英]javax.mail.AuthenticationFailedException: 535-5.7.8 Username and Password not accepted
[英]Sending email with java: AuthenticationFailedException: Username and Password not accepted
我看到了類似的問題,但沒有一個對我有幫助。 我將使用javaMailSender
。 雖然,我確信,我使用了有效的憑證,但它抱怨我的用戶名和密碼不正確。 所以這里是屬性:
spring.mail.host=smtp.gmail.com
spring.mail.username=myemail@gmail.com
spring.mail.password= mypassword
spring.mail.properties.mail.smtp.auth=true
spring.mail.properties.mail.smtp.socketFactory.port=465
spring.mail.properties.mail.smtp.socketFactory.class= javax.net.ssl.SSLSocketFactory
spring.mail.properties.mail.smtp.fallback= false
spring.mail.properties.mail.smtp.ssl.enable=true
然后在發送方 class 中制作一個 Bean 進行注入:
@Configuration
public class MailConfig {
@Autowired
JavaMailSender javaMailSender;
@Bean
@ConditionalOnProperty("spring.mail.host")
public SmtpkMailSender getMockMailSender(){
return new SmtpkMailSender(javaMailSender);
}
}
發送方 class 只有一種方法,可以從以下接口獲取:
public interface MailSender {
void sender(String to, String subject,String body);
}
最后,這里是發件人:
public class SmtpkMailSender implements MailSender {
static Log log=LogFactory.getLog(MailSender.class);
JavaMailSender javaMailSender;
public SmtpkMailSender(JavaMailSender javaMailSender){
this.javaMailSender=javaMailSender;
}
public void sender(String to, String subject,String body){
MimeMessage message=javaMailSender.createMimeMessage();
try {
MimeMessageHelper helper=new MimeMessageHelper(message,true);
helper.setTo(to);
helper.setSubject(subject);
helper.setText(body);
javaMailSender.send(message);
} catch (MessagingException e) {
e.printStackTrace();
}
}
}
因為我很確定
spring.mail.username=myemail@gmail.com spring.mail.password= mypassword
我轉到鏈接https://myaccount.google.com/u/1/lesssecureapps?pageId=none並將其設置為on但它仍然抱怨以下錯誤:
這是錯誤:
javax.mail.AuthenticationFailedException: 535-5.7.8 Username and Password not accepted. Learn more at
535 5.7.8 https://support.google.com/mail/?p=BadCredentials n29sm260426lfi.27 - gsmtp
嘗試重置您的電子郵件密碼,然后嘗試使用新密碼登錄。 另外,請確保您的用戶名(電子郵件地址)末尾帶有@gmail.com
。 另外,請確保您的用戶名和密碼為字符串(如引號所示)。
例:
spring.mail.username = "myemail@gmail.com"
spring.mail.password= "mypassword"
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.