我已经实现了以下电子邮件发送:
Template template = freemarkerConfig.getTemplate(templateFileName);
String html = FreeMarkerTemplateUtils.processTemplateIntoString(template, props);
logger.debug("Send email to {} with subject: [{}]", Arrays.toString(to), subject);
Personalization personalization = new Personalization();
for (String toEmail : to) {
personalization.addTo(new Email(toEmail));
}
Mail mail = new Mail();
mail.addPersonalization(personalization);
mail.setSubject(subject);
mail.setFrom(new Email(from));
mail.addContent(new Content("text/html", html));
Request request = new Request();
try {
request.setMethod(Method.POST);
request.setEndpoint("mail/send");
request.setBody(mail.build());
Response response = this.sendGrid.api(request);
logger.info("Response:{}", response);
} catch (IOException ex) {
logger.error("Exception occurred during email sending", ex);
}
我有一个需要使用SMTP-over-SSL
, 或SMTP+STARTTLS
.
我不确定这是什么意思。在这种情况下我应该使用 smtp api(而不是 web api)吗?但是sendgrid官网推荐使用web api。