javascript在服务器端创建电子邮件草稿并在用户客户端打开
我想在服务器端生成电子邮件“草稿”,并在用户的电子邮件客户端中打开
用例是:生成一封包含收件人、主题和正文(文本/html)的“完整”电子邮件,然后在用户的电子邮件客户端(Outlook 365和iOS上的邮件)中打开,以便真正查看并单击“发送”-可能进行一些手动更改
我测试了两种方法:
要在服务器端生成一个EML字符串,请将该字符串发送给客户机,客户机将生成一个EML字符串。EML文件(javascript)并使用FileSaver下载。js。它在桌面上运行正常,但在iOS上的Safari中运行不太好(无法正确下载和打开文件)
saveAs(new Blob([data.eml], {type: "message/rfc822 eml;charset=utf-8"}), "email.eml");
生成。EML文件服务器端,并将文件发送到客户端。这适用于桌面和Safari/iOS。不幸的是,邮件未显示为“草稿”状态,它看起来像用户邮箱中的已接收邮件,不可编辑
private Message createMessage(String to, String subject, String body) { MimeMessage message = new MimeMessage(Session.getInstance(System.getProperties())); message.setFlags(Flag.DRAFT, true); message.setRecipients(Message.RecipientType.TO, InternetAddress.parse(to)); message.setContent(body, "text/html"); message.setSubject(subject); return message; }
有人有过类似的经历吗?你是怎么解决的
共 (0) 个答案