FAQ:邮件线索

Xin LI <[email protected]>
reply-to        [email protected],
to      [email protected],
date    Wed, Apr 9, 2008 at 11:40 AM
subject [CPyUG:46591] Re: XXXXXXXXXXXXXXXXXXXX

zhjj wrote: > 看到有人说FOXMAIL之类的邮件客户端破坏“邮件线索”,邮件线索是什么?谁能讲 > 一下,或者告诉我哪里能找到这方面的资料? > 如果我自己做一个客户端,该怎么组织线索? > 谢谢!

你需要阅读许多的 RFC 并且非常小心地实现才行,基本上这些文档就够读上十天 半个月的。

你说的问题的答案在 RFC 2822 的 A.2 小节,假如你想要实现一个发信程序,请 务必遵循 RFC 2822, 2046, 2047, 4288, 20492392, 2387, 并阅读其他 全部 相关 RFC。

080911~ 进一步细说

Apex Liu <[email protected]>
reply-to        [email protected]
to      [email protected]
date    Thu, Sep 11, 2008 at 22:17
subject [CPyUG:65441] 关于邮件的线索功能的一些解释

我想大家都误解了邮件的“线索”这个功能了,它并不是根据邮件主题来进行关联 的,我来解释一下:

  • 真正的线索是与主题无关的。如果你能够看到邮件头,你会发现一些有趣的东西。

在Foxmail中,选中一封邮件,然后右键菜单中的“邮件信息->原始信息”可以看 到邮件头;对于Becky来说,在邮件内容的下方能够直接看到“Header”标签,点 击该标签就能够看到邮件头;在GMail中,查看邮件时在邮件主题的右侧有一个回 复按钮(带下拉展开),点按钮右侧的倒三角,出现的菜单中选择“显示原始邮件” ,然后在新开的浏览器窗口内容中上面部分就是邮件头。

  • 在邮件头中,你可以看到这样的信息:

Message-ID: <[email protected]>

  • 这是该邮件的全球唯一标识。同时你还可以看到类似这样的信息(如果这封邮件不

是一个线索的第一封邮件的话):

`References: <[email protected]> <[email protected]>`

  • 这表明当前查看的邮件是一个线索中某一封回复邮件,它是回复了一封唯一标识为

<[email protected]>

  • 的邮件,而被回复的那封邮件,又是回复了一封唯一标识为:

<[email protected]>

这封邮件是不是线索的第一封,需要看那一封邮件的邮件头中是否有References: 字段。线索的第一封邮件是没有References:这个字段的。

  • 然而,如果一封邮件是线索中的第1000封回复,如果保留完整的“邮件层次链”,

那么其References:字段可能会变得很大,得不偿失(例如回复一句话就十几个字节 ,但是邮件头可能就占用了好几Kb),所以一些邮件客户端在回复邮件时,只在 References:字段中保留被回复的那封邮件的全局唯一标识。此时References:字段 的作用就变得跟In-Reply-To:字段的作用一样了。

  • 这样一来,如果你收取的邮件中缺少了中间的几封邮件,就可能出现“线索断裂”

的情况了。

  • 我想,Foxmail并没有真正按照RFC中对于邮件头中References:字段的作用去操作

,而是直接使用了邮件标题来决定是否是同一个线索中的邮件。而Gmail或者Beck y这样的邮件客户端,却很好的按照RFC的标准来实现,所以如果大家都用这样的邮 件客户端,即使回复时将标题改得一塌糊涂,也是能够正确管理整个线索的。

-- Apex Liu <[email protected]>


反馈

创建 by -- ZoomQuiet [2008-04-09 03:50:35]

Name Password4deL ;) :( X-( B-)

PageCommentData