在基于React的Web应用程序中,生成的组件之一是邮件查看器,我们必须将电子邮件的html正文显示为组件。它对于大多数邮件都可以正常工作,我们使用
将电子邮件正文的内容设置为邮件查看器组件render: function(){
return (
<div dangerouslySetInnerHTML={{ __html: "<body><meta>.. mail content" }}></div>
);
}
问题是,某些邮件正文使用特定的元标记等覆盖或破坏了主体(应用程序)的样式。当我们渲染此类电子邮件时,主体应用程序的字体或背景色等会损坏。我们如何保持电子邮件正文的内部html与正文隔离?我们是否必须在渲染之前执行一些dom解析,以防止由于内部邮件内容而更改主页样式? html邮件内容是通过Java servlet发送的,我们也可以在使用Java发送到浏览器之前对内容进行一些过滤。是否可以使用IFrame?基于Web的邮件客户端如何处理诸如松鼠或Zimbra之类的行为?
我们如何在html邮件正文上实现“显示/阻止外部图像”概念? (过滤资源,例如图像,电子邮件安全性和隐私性脚本。)