相关疑难解决方法(0)

使用Javascript在Microsoft Outlook中创建HTML电子邮件

我想从Javascript Web应用程序创建一封电子邮件.我完全了解这方面的许多问题(例如,使用Chrome打开Outlook HTML).典型答案存在问题:

  1. Mailto:link:这将允许您创建一个电子邮件,但只能使用纯文本(无HTML),并且不允许附件.

  2. Activex:仅限IE,我的应用程序也需要在Firefox和Chrome中运行.允许使用ActiveX的FF和Chrome插件存在安全隐患,而且似乎有问题.

  3. 服务器端通过SMTP发送:电子邮件不会最终出现在用户的"已发送"文件夹中.加上障碍让用户在浏览器中编辑HTML并附加文件.

  4. 创建一个Outlook .MSG文件:似乎没有库,也没有关于这样做的书面文章.显然,文件格式实际上嵌入了整个FAT文件存储系统.

许多其他SO问题和我之间的主要区别:

  • 有机会获得客户端机器,这样我就可以安装辅助应用程序或插件,根据需要更改设置等.
  • 该接口并没有要实际发送邮件,只是需要将其设置为用户.
  • 我还需要能够通过电子邮件向JS发送附件(例如PDF).

我无法成为第一个面对此问题的Web应用程序开发人员,但我无法找到商业或开源的解决方案.

更新:

我使用了EML文件方法,到目前为止效果很好.这是我创建和触发它的JS代码:

var emlContent = "data:message/rfc822 eml;charset=utf-8,";
emlContent += 'To: '+emailTo+'\n';
emlContent += 'Subject: '+emailSubject+'\n';
emlContent += 'X-Unsent: 1'+'\n';
emlContent += 'Content-Type: text/html'+'\n';
emlContent += ''+'\n';
emlContent += htmlDocument;

var encodedUri = encodeURI(emlContent); //encode spaces etc like a url
var a = document.createElement('a'); //make a link in document
var linkText = document.createTextNode("fileLink");
a.appendChild(linkText);
a.href = encodedUri;
a.id = 'fileLink'; …
Run Code Online (Sandbox Code Playgroud)

javascript outlook web-applications

14
推荐指数
3
解决办法
3万
查看次数

标签 统计

javascript ×1

outlook ×1

web-applications ×1