我无法将附件放入具有SES API个性化的大容量电子邮件中。
我找不到这样做的人,所以我的问题是:有可能吗?
我所做的: 我已经创建了一个电子邮件模板-使用了CreateTemplate API。 -我已经根据需要进行了SendBulkTemplatedEmail操作,并且运行良好。使用API发送电子邮件。 (无附件);
我在文档中看到可以将附件放在SES原始电子邮件中,但是我找不到关于个性化电子邮件的任何信息...
为什么要个性化? 当我有5封邮件要发送时,每封邮件都是不同的,例如姓名...
“ SendBulkTemplatedEmail操作对于通过一次调用Amazon SES API将唯一的电子邮件发送到多个目标很有用。”
所以我将这5000封邮件分成了50组(这是我对ses的亚马逊限制),并一起发送这组电子邮件,(彼此之间有50封不同的电子邮件)。 诸如名称之类的问题,在我的特定问题中,涉及不同的附件。
public void sendEmailAWS(List<Object> someList, String templateName) throws Exception {
String remetente = "email...";
String dataFormat = "{\"name\":\"%s\"}";
AmazonSimpleEmailService ses = getSES();
List<BulkEmailDestination> bulkEmailDestinations = new ArrayList<BulkEmailDestination>();
for (Object obj : someList) {
Destination destination = new Destination();
List<String> toAddresses = new ArrayList<String>();
toAddresses.add(obj.getEmail());
destination.setToAddresses(toAddresses);
BulkEmailDestination bulkEmailDestination = new BulkEmailDestination();
bulkEmailDestination.setDestination(destination);
bulkEmailDestination.setReplacementTemplateData(String.format(
dataFormat,
obj.getName()
);
bulkEmailDestinations.add(bulkEmailDestination);
}
SendBulkTemplatedEmailRequest bulkTemplatedEmailRequest = new SendBulkTemplatedEmailRequest();
bulkTemplatedEmailRequest.withDestinations(bulkEmailDestinations);
bulkTemplatedEmailRequest.withTemplate(templateName);
bulkTemplatedEmailRequest.withDefaultTemplateData(String.format(dataFormat, ""));
bulkTemplatedEmailRequest.withSource(remetente);
try {
ses.sendBulkTemplatedEmail(bulkTemplatedEmailRequest);
} catch(Exception e) {
log = LoggerFactory.getLogger(e.getClass());
log.error(e.getMessage(), e.getCause());
}
}
```