Spring Boot Mail 使用访问令牌发送电子邮件
Spring Boot Mail send email using acces token
我在一个bean中配置的项目中有简单的邮件发送功能。
@Bean
public JavaMailSender javaMailSender() {
JavaMailSenderImpl javaMailSender = new JavaMailSenderImpl();
Properties properties = new Properties();
properties.setProperty("mail.smtp.auth", "false");
properties.setProperty("mail.smtp.socketFactory.port", "465");
properties.setProperty("mail.smtp.socketFactory.class", "javax.net.ssl.SSLSocketFactory");
properties.setProperty("smtp.socketFactory.fallback", "false");
properties.setProperty("mail.smtp.starttls.enable", "true");
properties.setProperty("mail.smtp.starttls.required", "true");
javaMailSender.setHost("smtp.gmail.com");
javaMailSender.setProtocol("smtp");
javaMailSender.setUsername("username");
javaMailSender.setPassword("password");
javaMailSender.setJavaMailProperties(properties);
return javaMailSender;
}
效果很好。
现在我想添加通过特定电子邮件的 accessToken/refreshToken 发送电子邮件的功能。
怎么做?我应该在我的 bean 中扩展什么或添加另一个 bean 以使用令牌发送?我找不到一些完整解释的例子。据我了解,我应该添加 setFrom()
并在 setPassword()
中放入 accessToken
使用OAUTH2 with JavaMail is explained on the JavaMail project page.
此外,您应该在您的代码中修复这些 common mistakes。
我在一个bean中配置的项目中有简单的邮件发送功能。
@Bean
public JavaMailSender javaMailSender() {
JavaMailSenderImpl javaMailSender = new JavaMailSenderImpl();
Properties properties = new Properties();
properties.setProperty("mail.smtp.auth", "false");
properties.setProperty("mail.smtp.socketFactory.port", "465");
properties.setProperty("mail.smtp.socketFactory.class", "javax.net.ssl.SSLSocketFactory");
properties.setProperty("smtp.socketFactory.fallback", "false");
properties.setProperty("mail.smtp.starttls.enable", "true");
properties.setProperty("mail.smtp.starttls.required", "true");
javaMailSender.setHost("smtp.gmail.com");
javaMailSender.setProtocol("smtp");
javaMailSender.setUsername("username");
javaMailSender.setPassword("password");
javaMailSender.setJavaMailProperties(properties);
return javaMailSender;
}
效果很好。
现在我想添加通过特定电子邮件的 accessToken/refreshToken 发送电子邮件的功能。
怎么做?我应该在我的 bean 中扩展什么或添加另一个 bean 以使用令牌发送?我找不到一些完整解释的例子。据我了解,我应该添加 setFrom()
并在 setPassword()
中放入 accessToken
使用OAUTH2 with JavaMail is explained on the JavaMail project page.
此外,您应该在您的代码中修复这些 common mistakes。