Microsoft Exchange Server 提供可供多个用户访问的共享邮箱功能。用户可以发送或接收电子邮件、创建日历和任务以及执行其他活动。在以编程方式使用 MS Exchange Server 时,您可能需要从共享邮箱访问电子邮件。因此,在本文中,您将学习如何使用 Java 从 MS Exchange Server 上的共享邮箱中读取电子邮件。
用于从 Exchange Server 上的共享邮箱读取电子邮件的 Java API
要从 MS Exchange Server 上的共享邮箱中读取消息,我们将使用 Aspose.Email for Java。 API 提供了一系列功能,可以从 Java 应用程序中连接到 MS Exchange Server 并与之一起工作。您可以 下载 API 或使用以下 Maven 配置安装它。
存储库:
<repository>
<id>AsposeJavaAPI</id>
<name>Aspose Java API</name>
<url>http://repository.aspose.com/repo/</url>
</repository>
依赖:
<dependency>
<groupId>com.aspose</groupId>
<artifactId>aspose-email</artifactId>
<version>22.2</version>
<classifier>jdk16</classifier>
</dependency>
在 Java 中从 Exchange Server 上的共享邮箱中读取电子邮件
以下是使用 Java 中的 EWS 客户端从 MS Exchange Server 上的共享邮箱读取电子邮件的步骤。
- 设置网络凭据。
- 连接到 Exchange Server 并将 EWS 客户端的实例放入 IEWSClient 对象中。
- 使用 IEWSClient.listItems(String, String) 方法将电子邮件从所需文件夹获取到数组中。
- 遍历数组中的每封电子邮件并执行以下步骤:
- 使用 IEWSClient.fetchItem(String) 方法将每条消息提取到 MapiMessage 对象中。
- 使用 MapiMessage 对象读取消息的详细信息,例如 MapiMessage.getSubject() 方法。
以下代码示例显示了如何使用 Java 从 MS Exchange Server 上的共享邮箱中读取电子邮件。
final String mailboxUri = "<HOST>";
final String domain = "";
final String username = "<EMAIL ADDRESS>";
final String password = "<PASSWORD>";
final String sharedEmail = "<SHARED EMAIL ADDRESS>";
// 设置网络凭据
NetworkCredential credentials = new NetworkCredential(username, password, domain);
// 获取 EWS 客户端
IEWSClient client = EWSClient.getEWSClient(mailboxUri, credentials);
// 从收件箱中获取项目
String[] items = client.listItems(sharedEmail, "Inbox");
// 阅读每封电子邮件
for (String item : items) {
MapiMessage msg = client.fetchItem(item);
System.out.println("Subject:" + msg.getSubject());
System.out.println("Subject:" + msg.getBody());
}
client.dispose();
获取免费 API 许可证
您可以获得 免费的临时许可证 来使用 Aspose.Email for Java,没有评估限制。
结论
在本文中,您学习了如何使用 Java 从 Microsoft Exchange Server 上的共享邮箱中读取电子邮件。您可以简单地安装 API 并集成提供的代码示例,以便从 Java 应用程序中访问共享邮箱。此外,您可以从 文档 中了解更多关于 Aspose.Email for Java 的信息。此外,如果您有任何问题,您可以通过我们的 论坛 向我们提问。