我正在制作一个使用POP3和IMAP的邮件客户端。我正在用vmime在C++中编程客户端。我的问题是:同步邮件的最佳方式是什么?
我认为标识符是个好方法,但我不知道什么是同步邮件的最佳标识符:
message-ID是最容易使用的,但是有可能有两个相同的消息ID吗?UID (IMAP)和UIDL (UID)同样的问题?
你能帮帮我吗?提前谢谢你。
发布于 2014-10-15 00:47:21
虽然Max正确地说,(FolderName, UIDVALIDITY, UID)的元组永远不会引用任何其他消息,但不幸的是,不能保证只使用相同的元组来引用给定的消息。服务器允许使用UIDVALIDITY,并且没有标准的方法来提供在消息移动中持续存在的唯一标识符或识别重复的消息。
发布于 2014-10-09 20:37:24
在IMAP中,规范地保证(FolderName, UIDVALIDITY, UID)的元组对于给定的服务器永远是唯一的。请注意,需要所有三个值才能确保唯一性。每个文件夹都有自己的UID,这可能是重叠的。已删除和重命名的文件夹也可能具有相同的UID,但必须具有不同的UIDVALIDITY。
在POP3中,UIDL通常是足够的,因为没有文件夹。
消息ID通常由发件人生成,因此不能保证是唯一的。复制以下内容非常简单:将消息从一个IMAP文件夹复制到另一个IMAP文件夹。
https://stackoverflow.com/questions/26283997
复制相似问题