IMAP - ENVELOPE与RFC822标题,获取整个消息与正文部分等

时间:2015-11-21 17:28:47

标签: imap

我正在写一个IMAP客户端,我有一个问题。

获取Sender,From,To,CC等 -

我可以使用FETCH RFC822.HEADER,它会给我一个长字符串w /有时不相关的信息,或者我可以FETCH ALL / FETCH ENVELOPE,这将给我一个很好的格式化版本的我需要的主要信息,这是日期,主题,发件人等

获取电子邮件/附件 -

我可以使用FETCH BODY.PEEK [],这将为我提供一个包含消息的每个部分的MIME字符串,无论我是否需要它(它也不像BODYSTRUCTURE那样以易于阅读的解析格式给出MIME边界) ,或者我可以FETCH BODYSTRUCTURE / FETCH(BODY ENVELOPE),然后解析出我想要/需要的各个部分,而不必下载所有内容。

我的问题是,在电子邮件客户端中是否真的需要使用rfc822标头或下载整个MIME字符串?它似乎是BODYSTRUCTURE& ENVELOPE使这变得更容易,所以有什么理由我需要在我的电子邮件客户端中手动解析RFC822标题/ MIME消息吗?我应该能够通过ENVELOPE& amp; BODYSTRUCTURE,对吗?

谢谢。

1 个答案:

答案 0 :(得分:0)

当您需要获取正文部分时,您可以使用// app/adapters/chart.js import ApplicationAdapter from './application'; export default ApplicationAdapter.extend({ buildURL: function(type, id, snapshot) { return this.host + '/' + this.namespace + '/reports/' + snapshot.record.get('report.id') + '/charts/' + id; } }); BODYSTRUCTURE(以及ENVELOPE等)。

您可能会发现,在某些时候,在1.0之前或之后,您可以选择例如检索BODY.PEEK[1]或其他内容。但总的来说,BODY.PEEK[HEADER.FIELDS (List-Id)]BODYSTRUCTURE已经足够了。