用于安全HTML的HTML电子邮件解析器?

时间:2016-10-24 16:18:52

标签: javascript html email-integration

在我花时间尝试重新发明轮子之前。我的Web应用程序接收来自用户的入站电子邮件。最典型的是这些是以HTML编码的形式接收的我需要能够以一种友好的格式向用户显示这些内容。

是否有任何存在可以完成大部分工作的咕噜声?我正在寻找一个包,我只是传递我的原始HTML电子邮件,它将剥离并格式化它以供显示。

没有任何东西,特别是,我可以使用一些东西去除标记:https://github.com/punkave/sanitize-html

我宁愿不使用iframe,只需将其添加到div占位符内的DOM中。我担心的是:

  • 删除邮件中的所有JS
  • 删除任何可能包含外部参考的标记
  • 删除所有CSS

允许的标签相当基本:p,b,i,strong,br;例如,它看起来像一条消息而不是一堆难以阅读的文本。

你过去为此做过什么?

1 个答案:

答案 0 :(得分:0)

希望这会为其他人节省一些有类似问题的时间:

在用户端,在您要显示电子邮件的div内:

<iframe src="/view/message/{message_id}" sandbox></iframe>

iframe路由只显示HTML,然后我使用github库:https://github.com/mganss/HtmlSanitizer来删除所有CSS标记和大多数HTML标记。我留下了基本的格式标签P; BR; B.我也删除了所有的javascript。