email - 从 IMAP 创建电子邮件线程?

标签 email imap

我想从 IMAP 服务器上的电子邮件创建“线程 View ”。

为了实现这一点,我获取了收件箱和其他文件夹中的电子邮件列表,但我需要知道哪个电子邮件正在回复哪个。 IMAP 中的电子邮件之间有这样的链接吗?

例如,在 IMAP 服务器上,每封电子邮件都有一个唯一的 ID:如果电子邮件 B 是对电子邮件 A 的答复,那么 A 的 ID 是否存储在电子邮件 B 中?

最佳答案

如果您的 IMAP 服务器支持 RFC 5256 中所述的“线程”功能,您可以只要求服务器为您处理消息。
否则,您将必须获取相关信息并在客户端上进行线程处理。 RFC 描述了两种算法来做到这一点。更简单的,ORDEREDSUBJECT ,只需按主题对邮件进行分组,然后按日期对其进行排序。这给出了扁平的线程结构。更复杂的一个,REFERENCES ,看着In-Reply-ToReferences每条消息的 header ,并将具有此类 header 的消息视为具有给定 Message-Id 的消息的子级.

关于email - 从 IMAP 创建电子邮件线程?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28739661/

相关文章:

email - 在回复电子邮件中保留标题数据

javascript - 限制接受包含非英文字符的电子邮件

java - 在没有邮件 session 的情况下用 Java 创建电子邮件消息

ios - 无法在 iOS 邮件中使用 WorkMail 联盟地址

exchange-server - Exchange 日历文件夹中的幻影邮件

c# - 从字符串为电子邮件创建自定义文件附件

scripting - 如何使用Powershell监视命令的特定收件箱?

java - Android JavaMail IMAP 10 秒后超时

JavaMailMessage.GetContent 偶尔返回 IMAPInputStream

php - PEAR 邮件不发送但也不报告错误