IMAP-信封与RFC822报头、获取整个消息与正文部分等



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

获取发件人、发件人、收件人、抄送等-

我可以FETCH RFC822.HEADER,它会给我一个长字符串,有时不相关的信息,或者我可以FETCH ALL/FETCH ENVELOPE,它会为我提供我需要的主要信息的格式很好的版本,即日期、主题、发件人等。

获取电子邮件/附件-

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

我的问题是,在电子邮件客户端中,使用rfc822标头或下载整个MIME字符串是否真的是必要的?看起来像是身体结构&信封让这件事变得容易多了,那么我有什么理由需要手动解析我的电子邮件客户端中的RFC822头/MIME消息吗?我应该能够用ENVELOPE&身体结构,对吗?

谢谢。

您可以使用BODYSTRUCTUREENVELOPE(以及BODY.PEEK[1]等,当您需要获取车身部件时)。

您可能会发现,在1.0之前或之后的某个时刻,您可能会选择例如检索BODY.PEEK[HEADER.FIELDS (List-Id)]或其他内容。但总的来说,你是对的,BODYSTRUCTUREENVELOPE就足够了。

最新更新