outlook 中所有发送的邮件是否都包含与收到的邮件相同的邮件标头?

问题描述 投票:0回答:1

通常在 MS-Graph API 中查询 Outlook 消息详细信息时,我看到消息标头仅适用于已接收的邮件,涵盖有关电子邮件的广泛信息,而不适用于已发送的邮件。

在互联网上挖掘此问题的原因时,让我确信发送邮件没有消息头的事情是,这些详细信息由电子邮件服务器添加到发送的邮件中,然后再将其发布到收件人的收件箱中。但是,在某些情况下,我可以看到已发送邮件的标头,其中包含有限的信息(参考),这将我带到这里。

已发送邮件的消息标题对于根据其包含的详细信息(例如附加参考邮件的图形数据的自动响应详细信息)进行分类非常有价值。但是所有发送的邮件都没有带有邮件标题。

有人可以解释在哪种具体情况下发送的邮件往往包含消息头吗?有什么方法可以获取 Outlook 中所有已发送邮件的邮件标头吗?

我通常用来查看outlook消息详情的图形查询是:
https://graph.microsoft.com/v1.0/me/messages?$select=internetmessageheaders

PS:我声称邮件的发送不仅仅与已发送邮件中的情况相同,而是通过验证发件人和邮件地址(即我)来发送,并且我的邮箱中还有更多此类情况。

outlook microsoft-graph-api email-headers
1个回答
0
投票

就像任何 MAPI 属性一样,不保证

PR_TRANSPORT_MESSAGE_HEADERS
存在。该属性是从消息的 MIME 标头转换而来的。如果消息从未从 MIME 格式转换而来,则该属性将不存在。如果它被转换(即使它是发送而不是接收),它可能会存在。

更大的问题是,您到底想从标题中提取什么?无论您想要什么,都有可能出现在专用的 MAPI 属性中,您可以在图形查询中请求该属性。使用 OutlookSpy 查看发送的消息(我是其作者) - 单击 IMessage 按钮查看所有 MAPI 属性。请记住,缓存模式下可用的属性集(在 Outlook 使用的本地 OST 文件中)可能与服务器包含的内容不同(这就是您的图形查询所看到的内容)。要查看服务器上可用的属性,请以在线模式在 Outlook 中打开邮件(右键单击 OutlookSpy 中

PR_ENTRYID
窗口中的
IMessage
属性,选择
IMAPISession::OpenEntry
,确保选中
MAPI_NO_CACHE
标志。

© www.soinside.com 2019 - 2024. All rights reserved.