我正在写一个IMAP客户端,我有一个问题。
获取发件人、发件人、收件人、抄送等-
我可以获取RFC822.HEADER,它将给我一个长字符串,有时不包含相关信息,或者我可以获取所有/获取信封,这将为我提供所需的主要信息的一个很好的格式化版本,即日期、主题、发送者等。
要获取电子邮件消息/附件-
我可以获取BODY.PEEK[],它将为消息的每个部分提供一个MIME字符串,而不管我是否需要它(它也不像BODYSTRUCTURE那样以一种易于阅读的解析格式提供MIME边界),或者我可以获取BODYSTRUCTURE / FETCH (正文信封),然后解析出我想要/需要的各个部分,而不必下载所有内容。
我的问题是,在电子邮件客户端中,是否真的需要使用rfc822头,或者下载整个MIME字符串?看起来BODYSTRUCTURE和ENVELOPE让这件事变得更容易了,那么有什么理由我需要在我的电子邮件客户端中手动解析RFC822头/ MIME消息呢?我应该能够用ENVELOPE & BODYSTRUCTURE做任何客户端需要的事情,对吗?
谢谢。
发布于 2015-11-22 01:52:19
你可以凑合使用BODYSTRUCTURE
,ENVELOPE
(和BODY.PEEK[1]
等当你需要获取身体部位的时候)。
你可能会发现,在1.0之前或之后的某个时刻,你可能会选择检索BODY.PEEK[HEADER.FIELDS (List-Id)]
或其他东西。但总体而言,您是对的,BODYSTRUCTURE
和ENVELOPE
就足够了。
https://stackoverflow.com/questions/33846414
复制相似问题