使用Javamail API和IMAP批量获取邮件正文

有没有办法通过使用Javamail API一次调用IMAP服务器来获取多个电子邮件邮件正文?

我知道我可以使用Message.getContent()调用到达给定消息的主体,但这最终会为每个消息调用imap服务器.

是否可以使用FetchProfile和Folder.fetch调用批量获取主体?文档暗示FetchProfile仅用于头数据.我尝试了以下方法,但是没有做到这一点:

FetchProfile fp = new FetchProfile();
fp.add("rfc822.text");
inBox.fetch(messages,fp);

如果使用Javamail无法做到这一点,是因为Javamail API中的约束还是IMAP协议根本不支持这个?

最佳答案
JavaMail的局限性. IMAP协议允许一次获取多个消息的正文:

a1 fetch 1:* (rfc822.header rfc822.text)

相关文章

最近看了一下学习资料,感觉进制转换其实还是挺有意思的,尤...
/*HashSet 基本操作 * --set:元素是无序的,存入和取出顺序不...
/*list 基本操作 * * List a=new List(); * 增 * a.add(inde...
/* * 内部类 * */ 1 class OutClass{ 2 //定义外部类的成员变...
集合的操作Iterator、Collection、Set和HashSet关系Iterator...
接口中常量的修饰关键字:public,static,final(常量)函数...