我正在开发一个Web应用程序,它以线程格式(以及其他内容)解析和显示电子邮件消息.电子邮件可能来自任何数量的不同邮件客户端,可以是文本或HTML格式.
鉴于大多数人都倾向于发帖,我希望能够以类似于Gmail的方式隐藏电子邮件回复中的重复邮件(例如"显示引用的文字").
确定消息的哪一部分是回复是有点挑战性的.就个人而言,我在回复时在引用文本的开头使用">"分隔符.我创建了一个正则表达式,它查找这些行并在它们周围包装一个div,以允许一些JS隐藏或显示这个文本块.
然后我注意到Outlook默认情况下不使用">"字符,它只是在回复上方添加一个标题块,其中包含标题摘要(From,Subject,Date等).回复没有动摇.我可以对此进行匹配并隐藏电子邮件的其余部分,并假设它是最高报价.
然后我查看了Thunderbird,它使用">"表示文本,而<blockquote>表示HTML邮件.我还没有看过Apple Mail的功能,Notes做了什么,或者其他数百万邮件客户端做了什么.
我会为每个客户编写一个特殊的案例正则表达式吗?还是有什么我想念的?
任何建议,示例代码或第三方库指针非常感谢!
我们的Web应用程序使用Windows集成身份验证(也称为NTLM身份验证)来提高安全性.
它适用于IE和Firefox用户,但Safari用户看到间歇性问题.浏览网站会很好,但每隔一段时间就会出现加载页面元素的问题(例如CSS或JS文件).重新加载,问题将消失.
如果我们使用调试代理(Fiddler),我们可以看到Safari发生了很多额外的401请求.每隔一段时间,对资源的请求就会卡在401请求循环中,并最终失败.
我无法看到我们正在做的任何事情,这似乎是Safari中的一个错误.有没有人以前遇到过这个问题,并有任何解决方案的建议?
谢谢,
达伦.