【发布时间】:2016-12-09 18:34:52
【问题描述】:
我正在使用 ews-java-api,我使用它来处理传入特定 Exchange 帐户的电子邮件,以便我可以从电子邮件中提取关键信息(即主题、正文、收件人、发件人等)通过 API 调用转发到另一个系统。我能够识别电子邮件的收件人,因为它自然与我从中检索新电子邮件的帐户相匹配,但我似乎无法识别发件人可能用于发送电子邮件的别名。
例如,如果我从 janedoe@mycompany.com 向 bobsmith@mycompany.com 发送电子邮件,然后我可以从“bobsmith”帐户中获取电子邮件,并阅读主题、正文等。但如果 Bob Smith有一个别名,比如说,“hero@mycompany.com”,它转到他的 bobsmith 帐户,Jane Doe 给他发电子邮件到那个地址,我只看到“bobsmith@mycompany.com”作为收件人,而不是“英雄...... ”。我似乎在 Exchange 项目上找不到任何方法调用(即使转换为“EmailMessage”类型,这也允许我获取“to:”字段中使用的地址。
有谁知道如何在收到的消息中获取该别名?
【问题讨论】:
-
这是一个很好的起点...感谢您了解这一点,因为我之前找不到。但是,这是 C# 代码,其中一些项目无法正确转换为 ews-java-api 库。我对 C# 不太熟悉,所以我不确定如何翻译诸如 propertySet 语法或 tryGetProperty 函数之类的东西,因为它们似乎没有功能性的 Java 等价物。
-
您只需要检查上面示例列出的相应标题即可。由于标头是协议的一部分,只要您的 java lib 允许您提取标头,就应该没问题(我认为)。
-
好吧,花了一点时间才弄清楚,在您发布的链接和 this one 之间,问题似乎与将 ItemSchema.MimeContent 添加到 PropertySet,然后使用常规在“to”字段中查找别名的表达式。我将使用该分辨率更新问题,因为虽然它不是太干净,但我能够使其工作。感谢您为我指明正确的方向!
标签: java email ewsjavaapi