【发布时间】:2015-03-25 19:32:16
【问题描述】:
我正在使用 JavaMail 1.5.2 来读取来自 IMAP 帐户的邮件。为了减少对主机的请求数量,我预取了一些消息数据,例如 From、Date、Message-ID 等:
Folder folder = store.getFolder("inbox");
folder.open(Folder.READ_ONLY);
FetchProfile fp = new FetchProfile();
fp.add(FetchProfile.Item.ENVELOPE);
fp.add(FetchProfile.Item.CONTENT_INFO);
fp.add("Message-ID");
Message msgs[] = folder.getMessages();
folder.fetch(msgs,fp);
但是,我还想预取 一些 部分内容以创建邮件的预览文本,而无需加载包含所有附件的完整邮件。例如,我想预取所有类型为“text/plain”且没有附件的内容。这可能吗?
PS:我不是在寻找像fp.add(IMAPFolder.FetchProfileItem.MESSAGE) 这样的解决方案,因为这会预取带有所有附件的整个消息。
【问题讨论】:
标签: java imap fetch jakarta-mail