Microsoft Exchange Server 是一個郵件服務器,提供電子郵件、日曆、聯繫人管理和其他協作服務。它可以很容易地從您的網絡或桌面應用程序中連接和訪問。因此,您可以與 Exchange Server 通信並訪問電子郵件、聯繫人、日曆等。在本文中,您將學習如何連接到 MS Exchange Server 並使用 Java 閱讀電子郵件。

用於 MS Exchange Server 的 Java API

Aspose.Email for Java 是一個強大的 API,可為您提供範圍廣泛的電子郵件管理功能。它允許您從 Java 應用程序中實現功能豐富的電子郵件客戶端。此外,API 允許您從 MS Exchange Server 訪問文件夾、子文件夾、電子郵件、日曆、聯繫人等。您可以 下載 API 的 JAR 或使用以下 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>21.2</version>
    <classifier>jdk16</classifier>
</dependency>

用 Java 連接到 MS Exchange Server

為了使用 MS Exchange Server,您需要先建立連接。 Aspose.Email for Java 提供了以下連接到 Exchange Server 的方法。

  • 使用 Exchange 網絡服務 (EWS)
  • 使用 Internet 消息訪問協議 (IMAP)

在 Java 中使用 EWS 連接到 Exchange Server

以下是通過 EWS 連接到 Exchange Server 的步驟。

以下代碼示例顯示如何使用 Java 中的 EWS 連接到 MS Exchange Server。

// 創建 IEWSClient 類的實例以連接到 Exchange Server
IEWSClient client = EWSClient.getEWSClient("https://exchange.domain.com/ews/Exchange.asmx/", "user", "password", "");

在 Java 中使用 IMAP 連接到 Exchange Server

在嘗試使用 IMAP 連接到 Exchange Server 之前,請確保您已啟用 IMAP 服務。完成後,以下是使用 IMAP 連接到 Exchange 服務器的步驟。

  • 創建 ImapClient 類的實例並使用地址、端口、用戶名和密碼對其進行初始化。
  • 使用 ImapClient 對象訪問消息、聯繫人等。

以下代碼示例顯示如何使用 IMAP 連接到 Exchange Server。

// 使用 ImapClient 類連接到 Exchange Server
ImapClient imapClient = new ImapClient("imap.gmail.com", 993, "username", "password");

在 Java 中讀取來自 MS Exchange Server 的電子郵件

連接到 Exchange Server 後,您可以從服務器讀取消息。您可以使用 EWS 或 IMAP 來完成。

使用 EWS 從 MS Exchange Server 讀取電子郵件

以下是使用 EWS 從 Exchange Server 讀取電子郵件的步驟。

以下代碼示例顯示如何通過 Java 中的 EWS 從 Exchange Server 讀取消息。

// 通過提供憑據創建 ExchangeWebServiceClient 類的實例
IEWSClient client = EWSClient.getEWSClient("https://outlook.office365.com/ews/exchange.asmx", "testUser", "pwd", "domain");

// 調用 ListMessages 方法列出收件箱中的消息信息
ExchangeMessageInfoCollection msgCollection = client.listMessages(client.getMailboxInfo().getInboxUri());

// 循環遍歷集合以獲取 Message URI
for (ExchangeMessageInfo msgInfo : msgCollection) {
	String strMessageURI = msgInfo.getUniqueUri();

	// 現在使用 FetchMessage() 獲取消息詳細信息
	MailMessage msg = client.fetchMessage(strMessageURI);

	// 顯示消息詳細信息
	System.out.println("Subject: " + msg.getSubject());
	//Console.WriteLine("HTML 正文:" + msg.HtmlBody);

	// 多少個附件
	System.out.println("Number of attachments: " + msg.getAttachments().size());

	// 列出附件
	for (Attachment att : msg.getAttachments()) {
		System.out.println("Attachment Name: " + att.getName());
	}
}

使用 IMAP 從 MS Exchange Server 讀取電子郵件

以下是使用 IMAP 從 Exchange Server 讀取電子郵件的步驟。

以下代碼示例顯示瞭如何使用 Java 通過 IMAP 從 Exchange Server 讀取電子郵件。

// 使用 ImapClient 類連接到 Exchange Server
ImapClient imapClient = new ImapClient("imap.gmail.com", 993, "username", "password");

// 選擇收件箱文件夾
imapClient.selectFolder(ImapFolderInfo.IN_BOX);

// 獲取消息列表
ImapMessageInfoCollection msgCollection = imapClient.listMessages();
for (ImapMessageInfo msgInfo : msgCollection) {
	System.out.println(msgInfo.getSubject());
}

獲取免費的 API 許可證

您可以通過獲得臨時許可證來試用 Aspose.Email for Java,而沒有評估限制。

現場演示

結論

在本文中,您了解瞭如何使用 Java 連接到 MS Exchange Server 和閱讀電子郵件。此外,您還了解瞭如何使用 EWS 或 IMAP 訪問 MS Exchange Server。您可以使用 文檔 探索更多關於 Aspose.Email for Java 的信息。如果您有任何問題或疑問,請隨時通過我們的 論壇 告訴我們。

也可以看看

使用 Java 創建和發送 Outlook 電子郵件在 Python 中連接到 IMAP 服務器用 Java 連接到 POP3 服務器
用 Python 連接到 SMTP 服務器使用 C# 在 MS Exchange Server 上創建和刪除文件夾用 Java 在 MS Exchange Server 上創建和刪除文件夾
在 C# 中使用 Microsoft Graph API 創建和發送消息在 Java 中使用 Microsoft Graph API 創建和發送消息在 Java 中使用 Microsoft Graph API 創建和更新文件夾
在 C# .NET 中創建 Exchange 分發列表在 Java 中創建 Exchange 分發列表用 Java 創建 MS Outlook 分發列表
用 Java 創建 MS Outlook 分發列表在 Python 中創建 MS Outlook 分發列表在 Python 中創建 MS Outlook 任務
在 C# 中創建、更新或刪除 Google 日曆在 Java 中創建、更新或刪除 Google 日曆在 C# 中創建、更新或刪除 MS Exchange 服務器上的任務
[使用 Java 在 MS Exchange Server 上創建、更新或刪除任務](https://blog.aspose.com/zh-hant/2022/03/11/create-update-or-delete-tasks-on-ms-exchange-server-in -java/)使用 C# 在 Gmail 中創建、更新和刪除聯繫人使用 Java 在 Gmail 中創建、更新和刪除聯繫人