【问题标题】:Obtaining IMAP attachments using BODY parts使用 BODY 部件获取 IMAP 附件
【发布时间】:2012-12-31 13:46:58
【问题描述】:

我正在创建一个具有 API 功能的电子邮件客户端。其中一项功能是提供 API 调用来下载给定的附件。

为了获取附件,给定文件名和唯一电子邮件 ID(使用 GMail X-MSG-ID 唯一标识符),我正在下载整个电子邮件,使用 FETCH 命令和 RFC822 命令。这自然很重。

我想要做的是只下载作为附件的 BODY 部分,例如 BODY[1]、BODY[2] 等。我知道获取 BODYSTRUCTURE 会给我一个格式为 ("部分”,“等”)(“部分”,“等”)。我想知道的是这些部分如何映射到BODY[0]、BODY[1]等

部件出现在 BODYSTRUCTURE 响应中的顺序是否直接映射到 BODY 索引?因此,如果调用 BODYSTRUCTURE 我得到 ("123","ETC")("456","ETC")("789","ETC"),我可以假设 BODY[0] 是“123”并且 BODY [1] 是“456”吗?或者是否有另一种方法可以将 BODYSTRUCTURE 响应中括号中的元素映射到 BODY[0]、BODY[1] 等?

谢谢

【问题讨论】:

    标签: imap mime


    【解决方案1】:

    我已经通过反复试验解决了这个问题。

    在 BODYSTRUCTURE 响应中会出现 BODY indeces。因此,使用上面的示例,如果在 BODYSTRUCTURE 响应中获得 ("123","ETC")("456","ETC"),那么当您调用 BODY[1] 时,您将获得“123”部分,当您调用 BODY[2] 时,您将获得“456”,以此类推。

    【讨论】:

      猜你喜欢
      • 2012-07-02
      • 2019-02-21
      • 1970-01-01
      • 2012-01-24
      • 1970-01-01
      • 2013-02-01
      • 2019-02-13
      • 2010-09-29
      • 1970-01-01
      相关资源
      最近更新 更多