12

通过 telnet 使用 IMAP,我希望能够从特定的给定电子邮件中提取主题。现在我知道 fetch 命令负责从电子邮件中获取数据。

我的问题是,如何在调用 BODY[HEADER.FIELDS (SUBJECT)] 的情况下专门获取主题标题(在服务器看来,这将“打开电子邮件”并因此设置 /seen 标志,这是我不想发生的)?

我知道 FETCH FULL 返回完整的标题,其中包含主题,但解析它是一场噩梦,如果我手动解析它可能会充满看不见的陷阱。我如何让服务器只给我标题中的主题?

4

3 回答 3

20

我发现了答案:

BODY.PEEK[标题.字段(主题)]

.PEEK 告诉它不要打开它(所以 /seen 没有设置)。

于 2012-09-19T12:13:17.680 回答
4

"a1 FETCH 1:* (FLAGS BODY[HEADER.FIELDS (SUBJECT DATE FROM)])\r\n"

于 2014-06-06T00:02:13.010 回答
3

除了 BODY.PEEK,您还可以获取 ENVELOPE,它为您提供了大部分消息元数据的解析摘要。

于 2012-09-19T13:07:12.070 回答