Microsoft Exchange Server to serwer pocztowy, który zapewnia pocztę e-mail, kalendarze, zarządzanie kontaktami i inne usługi współpracy. Można go łatwo podłączyć i uzyskać do niego dostęp z poziomu aplikacji internetowych lub stacjonarnych. W ten sposób możesz komunikować się z serwerem Exchange i uzyskiwać dostęp do wiadomości e-mail, kontaktów, kalendarzy itp. W tym artykule dowiesz się, jak połączyć się z serwerem MS Exchange i czytać wiadomości e-mail za pomocą języka Java.

Java API do pracy z MS Exchange Server

Aspose.Email for Java to potężny interfejs API, który zapewnia szeroki zakres funkcji zarządzania pocztą e-mail. Umożliwia wdrażanie bogatych w funkcje klientów poczty e-mail z poziomu aplikacji Java. Ponadto interfejs API umożliwia dostęp do folderów, podfolderów, wiadomości e-mail, kalendarzy, kontaktów itp. z serwera MS Exchange. Możesz pobrać plik JAR interfejsu API lub zainstalować go przy użyciu następujących konfiguracji Mavena.

<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>

Połącz się z MS Exchange Server w Javie

Aby pracować z MS Exchange Server, musisz najpierw nawiązać połączenie. Aspose.Email for Java zapewnia następujące sposoby łączenia się z serwerem Exchange.

  • Korzystanie z usługi internetowej Exchange (EWS)
  • Korzystanie z protokołu internetowego dostępu do wiadomości (IMAP)

Połącz się z serwerem Exchange przy użyciu EWS w Javie

Poniżej przedstawiono kroki, aby połączyć się z serwerem Exchange za pośrednictwem EWS.

Poniższy przykładowy kod pokazuje, jak połączyć się z MS Exchange Server przy użyciu EWS w Javie.

// Utwórz instancję klasy IEWSClient, aby połączyć się z serwerem Exchange
IEWSClient client = EWSClient.getEWSClient("https://exchange.domain.com/ews/Exchange.asmx/", "user", "password", "");

Połącz się z serwerem Exchange przy użyciu protokołu IMAP w Javie

Przed próbą połączenia z serwerem Exchange przy użyciu protokołu IMAP upewnij się, że masz włączone usługi IMAP. Po zakończeniu wykonaj następujące czynności, aby połączyć się z serwerem Exchange przy użyciu protokołu IMAP.

  • Utwórz instancję klasy ImapClient i zainicjuj ją adresem, portem, nazwą użytkownika i hasłem.
  • Uzyskaj dostęp do wiadomości, kontaktów itp. za pomocą obiektu ImapClient.

Poniższy przykładowy kod pokazuje, jak nawiązać połączenie z serwerem Exchange przy użyciu protokołu IMAP.

// Połącz się z serwerem Exchange przy użyciu klasy ImapClient
ImapClient imapClient = new ImapClient("imap.gmail.com", 993, "username", "password");

Czytaj e-maile z MS Exchange Server w Javie

Po nawiązaniu połączenia z serwerem Exchange możesz czytać wiadomości z serwera. Możesz to zrobić za pomocą EWS lub IMAP.

Czytaj wiadomości e-mail z serwera MS Exchange przy użyciu EWS

Poniżej przedstawiono kroki, aby odczytać wiadomości e-mail z serwera Exchange przy użyciu EWS.

Poniższy przykładowy kod pokazuje, jak odczytywać wiadomości z Exchange Server za pośrednictwem EWS w Javie.

// Utwórz instancję klasy ExchangeWebServiceClient, podając poświadczenia
IEWSClient client = EWSClient.getEWSClient("https://outlook.office365.com/ews/exchange.asmx", "testUser", "pwd", "domain");

// Wywołaj metodę ListMessages, aby wyświetlić informacje o wiadomościach ze skrzynki odbiorczej
ExchangeMessageInfoCollection msgCollection = client.listMessages(client.getMailboxInfo().getInboxUri());

// Przejrzyj kolekcję, aby uzyskać identyfikator URI komunikatu
for (ExchangeMessageInfo msgInfo : msgCollection) {
	String strMessageURI = msgInfo.getUniqueUri();

	// Teraz uzyskaj szczegóły wiadomości za pomocą FetchMessage()
	MailMessage msg = client.fetchMessage(strMessageURI);

	// Wyświetl szczegóły wiadomości
	System.out.println("Subject: " + msg.getSubject());
	//Console.WriteLine("Treść HTML: " + msg.HtmlBody);

	// Ile załączników
	System.out.println("Number of attachments: " + msg.getAttachments().size());

	// Wypisz załączniki
	for (Attachment att : msg.getAttachments()) {
		System.out.println("Attachment Name: " + att.getName());
	}
}

Czytaj wiadomości e-mail z serwera MS Exchange przy użyciu protokołu IMAP

Poniżej przedstawiono kroki, aby czytać wiadomości e-mail z serwera Exchange przy użyciu protokołu IMAP.

Poniższy przykładowy kod pokazuje, jak odczytywać wiadomości e-mail z programu Exchange Server za pośrednictwem protokołu IMAP przy użyciu języka Java.

// Połącz się z serwerem Exchange przy użyciu klasy ImapClient
ImapClient imapClient = new ImapClient("imap.gmail.com", 993, "username", "password");

// Wybierz folder Skrzynka odbiorcza
imapClient.selectFolder(ImapFolderInfo.IN_BOX);

// Pobierz listę wiadomości
ImapMessageInfoCollection msgCollection = imapClient.listMessages();
for (ImapMessageInfo msgInfo : msgCollection) {
	System.out.println(msgInfo.getSubject());
}

Uzyskaj bezpłatną licencję API

Możesz wypróbować Aspose.Email for Java bez ograniczeń ewaluacyjnych, uzyskując licencję tymczasową.

Demo na żywo

Wniosek

W tym artykule nauczyłeś się, jak łączyć się z serwerem MS Exchange i czytać wiadomości e-mail za pomocą języka Java. Ponadto widziałeś, jak uzyskać dostęp do MS Exchange Server za pomocą EWS lub IMAP. Możesz dowiedzieć się więcej o Aspose.Email dla Javy, korzystając z dokumentacji. Jeśli masz jakieś pytania lub wątpliwości, daj nam znać za pośrednictwem naszego forum.

Zobacz też

Tworzenie i wysyłanie wiadomości e-mail programu Outlook przy użyciu języka JavaPołącz się z serwerami IMAP w PythonPołącz się z serwerami POP3 w Javie
Połącz z serwerem SMTP w PythonTworzenie i usuwanie folderów na serwerze MS Exchange w języku C#Tworzenie i usuwanie folderów na MS Exchange Server w Javie
Tworzenie i wysyłanie wiadomości przy użyciu interfejsu Microsoft Graph API w języku C#Tworzenie i wysyłanie wiadomości za pomocą Microsoft Graph API w JavieTworzenie i aktualizowanie folderów za pomocą Microsoft Graph API w Javie
Utwórz listę dystrybucyjną Exchange w C# .NETUtwórz listę dystrybucyjną Exchange w JavieTworzenie list dystrybucyjnych MS Outlook w Javie
Tworzenie list dystrybucyjnych MS Outlook w JavieTworzenie list dystrybucyjnych MS Outlook w PythonUtwórz zadania MS Outlook w Python
Tworzenie, aktualizowanie lub usuwanie kalendarza Google w języku C#Tworzenie, aktualizowanie lub usuwanie Kalendarza Google w JavieTworzenie, aktualizowanie lub usuwanie zadań na serwerze MS Exchange w języku C#
Tworzenie, aktualizowanie lub usuwanie zadań na serwerze MS Exchange w JavieTworzenie, aktualizowanie i usuwanie kontaktów w Gmailu przy użyciu języka C#Tworzenie, aktualizowanie i usuwanie kontaktów w Gmailu przy użyciu języka Java