You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何使用Graph REST API获取深度嵌套邮件的MIME内容

获取深度嵌套嵌入式邮件的MIME内容

我之前也碰到过类似的嵌套邮件MIME获取问题,微软Graph API在这里的逻辑得特别注意——每一层嵌入式邮件本质上都是一个独立的message资源,不是直接挂载在父附件的层级路径下。你之前尝试的那些路径之所以失败,是因为错误地把附件ID嵌套拼接了,正确的做法是逐层提取嵌套邮件的消息ID,再通过这个ID来获取它的MIME内容。

具体操作步骤如下:

  1. 获取外层邮件的附件,提取第一层嵌入式邮件的消息ID
    先调用接口拿到外层邮件的所有附件:

    GET /users/{USER_ID}/messages/{MSG_ID}/attachments
    

    在返回结果里,找到mimeType为message/rfc822的嵌入式邮件附件,它的message属性里会有一个id字段(这就是这个嵌入式邮件本身的消息ID,记为NESTED_MSG_1_ID)。

  2. 获取第一层嵌套邮件的附件,提取第二层嵌入式邮件的消息ID
    用第一步拿到的消息ID,调用接口获取该嵌套邮件的附件:

    GET /users/{USER_ID}/messages/{NESTED_MSG_1_ID}/attachments
    

    同样找到其中mimeType为message/rfc822的附件,提取它的message.id(记为NESTED_MSG_2_ID)。

  3. 获取深层嵌套邮件的MIME内容
    最后用最深层的消息ID,调用标准的邮件MIME获取接口:

    GET /users/{USER_ID}/messages/{NESTED_MSG_2_ID}/$value
    

补充说明

  • 不管嵌套多少层,逻辑都是一致的:每一层嵌入式邮件都对应一个独立的message资源,需要先通过父级邮件/嵌套邮件的附件列表找到它的消息ID,再基于这个ID进行后续操作。
  • 别尝试用附件ID拼接路径(比如attachments/{ATTACHMENT1_ID}/attachments/{ATTACHMENT2_ID}),这种路径在Graph API里是不被支持的——附件本身没有子附件的层级结构,只有message资源才有自己的附件集合。

内容的提问来源于stack exchange,提问作者Hippocrates

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.04.28 13:18:16