检索选择的电子邮件列表的IMAP标头?

时间:2012-04-06 00:53:46

标签: imap

我想查询收件箱中所有未删除的电子邮件,然后检索这些电子邮件的标头。它不起作用。

首先,我查询未删除的电子邮件:

a0003 SEARCH UNDELETED
* SEARCH 14 56 242 243 244 405

然后,我想查询一些标题信息:

a0004 FETCH 14,56,242,243,244,405 (FLAGS BODY.PEEK[HEADER.FIELDS (SUBJECT DATE FROM)])

...这会产生错误:

a0004 BAD Error in IMAP command FETCH: Invalid arguments.

现在,如果我为我的消息列表执行类似14:*的操作,则此功能正常。但这不是我想要的;我想查询一个非常具体的消息编号列表。

我也尝试使用UID来查看是否解决了问题:

a0003 UID SEARCH UNDELETED
* SEARCH 5536 5537 5538 5561 5568 5655

a004 UID FETCH 5536,5537,5538,5561,5568,5655, etc.

...但我得到了类似的错误。

有关如何最好地完成此任务的任何建议?谢谢!

1 个答案:

答案 0 :(得分:2)

误报。我解决了自己的问题。事实证明,\r潜入FETCH字符串。我清理了它并且工作正常。

感谢您确认它确实有效!