【问题标题】:Javamail get all emails form a specific sender - Stack OverflowJavamail从特定发件人那里获取所有电子邮件 - Thinbug
【发布时间】:2018-06-21 03:04:26
【问题描述】:

我正在尝试使用 JavaMail 获取来自特定发件人(例如 from@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();

但这是不可行的。

我应该怎么做?

【问题讨论】:

标签: java jakarta-mail


【解决方案1】:

POP3 协议不支持服务器端搜索。所有消息的所有标头都将下载到客户端并在那里进行搜索,就像您自己做的那样。不过,如果您有来自该发件人的消息,我希望它能够正常工作。 JavaMail debug output 将显示是否真的有来自该发件人的消息。

仍然更简单更好的解决方案是切换到 IMAP 并让服务器进行搜索。

【讨论】:

    猜你喜欢
    • 2014-10-15
    • 2019-03-06
    • 2015-08-29
    • 1970-01-01
    • 2014-09-07
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多