3

我正在使用 javax.mail 使用 IMAP 从 GMail 检索邮件。我还想获取应用于每封邮件的标签,因此我正在遍历商店中的所有文件夹(实际上是标签)并相互下载邮件。

我使用ImapFolder的 getUID 方法来获取每封邮件的 UID,然后比较它们以识别不同文件夹中的相同邮件。

例如,如果我将邮件“Hello”标记为“A”和“B”,我将遍历文件夹“Inbox”、“A”和“B”,并从每个文件夹中获取相同的邮件;所以我可以保留一份标有“收件箱”、“A”和“B”的副本。

但是getUID方法返回的是一个相对于文件夹的ID,所以同一封邮件在不同的文件夹中可能有不同的ID,或者不同的邮件在不同的文件夹中可能有相同的ID。在示例中。“HellO”可能在“A”中显示为邮件 1,在“B”中显示为邮件 2。

有没有一种方法可以为每封邮件获取与商店相关的 ID,而与文件夹无关?或者更好的方法来获取附加到单个邮件的标签?

4

2 回答 2

3

从gmail 论坛得到答案:有一个“message-id”标题,其中包含我正在寻找的值。

于 2008-10-21T12:55:50.143 回答
1

我认为唯一的方法是使用您根据消息头自己计算的哈希值。

于 2008-10-20T20:27:27.127 回答