0

故事很简单:一个用户创建一个新讨论,系统向其他用户发送电子邮件通知。当这些用户回复通知时,他们的回复应作为评论正确路由到特定讨论。

当系统发出电子邮件通知时,它会在主题中包含路由代码。例如,通知的主题可能如下所示:'讨论“让我们谈谈”已经开始{123}'。由于所有电子邮件客户端都使用Re: ORIGINAL SUBJECT我们{123}作为主题的一部分返回,解析它并知道将评论放在哪里。

我们已经有这个工作了(实际上已经有好几年了),但是当前的实现看起来有点脏(尤其是当代码变得更长时),所以我们想探索有没有替代方案。有没有更优雅的方法来解决这个问题,它可以在大多数电子邮件客户端上可靠地工作?我们可能缺少的电子邮件标题?相似的东西?

非常感谢

4

1 回答 1

1

由于您没有提及,我不确定您是否对此进行了调查:

电子邮件标题中有一个名为的字段,该字段In-Reply-To应包含邮件正在回复的电子邮件的消息 ID 和一个名称References,该名称应指定该邮件所属的线程:

“In-Reply-To:”字段可用于标识新消息
作为回复的消息(或多个消息),而
“References:”字段可用于标识
对话的“线程”。

根据 rfc,该In-Reply-To字段应包含“父”消息Message-Id,而该References字段将引用父消息的References字段。

此字段的问题在于,不能保证其中有一些有用的东西,因为它们不需要正确填写以进行邮件传递,因此某些邮件客户端可能无法正确填写它们,甚至可能根本不填写。

我发现这篇文章是关于使用 In-Reply-To 字段构建线程算法并声称对这些字段中的垃圾和恶意输入具有鲁棒性。

于 2013-01-31T09:57:00.073 回答