Javamail获取来自特定发件人的所有电子邮件 - 代码日志
Javamail get all emails form a specific sender - Stack Overflow
我正在尝试使用 JavaMail
获取来自特定发件人的所有电子邮件,比如来自@example.com
我尝试关注
Folder inbox = store.getFolder("INBOX");
inbox.open(Folder.READ_ONLY);
SearchTerm sender = new FromTerm(new InternetAddress("from@example.com"));
Message[] messages = inbox.search(sender);`
但是它没有给我任何邮件。因为我收到了来自此类发件人的多封电子邮件。
我知道我可以先阅读收件箱中的所有电子邮件,然后使用 getFrom()
搜索此类发件人
Message[] arrayMessages = folderInbox.getMessages();
但是不可行
我应该怎么做?
POP3 协议不支持 server-side 搜索。所有消息的所有 headers 都将下载到客户端并在那里进行搜索,就像您自己做的那样。不过,如果您有来自该发件人的消息,我希望它能正常工作。 JavaMail debug output 将显示是否真的有来自该发件人的邮件。
更简单更好的解决方案是切换到 IMAP,让服务器进行搜索。
我正在尝试使用 JavaMail
获取来自特定发件人的所有电子邮件,比如来自@example.com我尝试关注
Folder inbox = store.getFolder("INBOX");
inbox.open(Folder.READ_ONLY);
SearchTerm sender = new FromTerm(new InternetAddress("from@example.com"));
Message[] messages = inbox.search(sender);`
但是它没有给我任何邮件。因为我收到了来自此类发件人的多封电子邮件。
我知道我可以先阅读收件箱中的所有电子邮件,然后使用 getFrom()
Message[] arrayMessages = folderInbox.getMessages();
但是不可行
我应该怎么做?
POP3 协议不支持 server-side 搜索。所有消息的所有 headers 都将下载到客户端并在那里进行搜索,就像您自己做的那样。不过,如果您有来自该发件人的消息,我希望它能正常工作。 JavaMail debug output 将显示是否真的有来自该发件人的邮件。
更简单更好的解决方案是切换到 IMAP,让服务器进行搜索。