2

我需要通过 Java 将消息从 IMAP 文件夹移动到另一个 IMAP 文件夹(同一帐户)。

我从事 Gmail 和 oauth 登录工作。

我使用 java imap 邮件客户端:我使用 sourceFolder.getMessages() 获取消息,然后调用方法destFolder.appendMessages(sourceFolder.getMessages())addMessages:当要移动的消息数量太大时产生的问题。我不得不移动 8000 封邮件,并且登录会话在程序开始添加但尚未完成的几分钟后到期。

它每秒处理大约 1 条消息。我使用 oauth 登录

4

1 回答 1

1

执行此操作的正常方法是使用服务器复制和删除。在 IMAP 语法中,复制命令是tag COPY sequence mailboxname. Like: a000 COPY 1:* INBOX.Saved, 会将所有消息复制到我的 Saved 子文件夹中。

您正在执行的方法需要下载每条消息,然后重新上传。

于 2012-11-09T14:26:25.207 回答