Получить список контактов с сервера Microsoft Exchange в Java

При программной работе с Microsoft Exchange Server может потребоваться доступ к контактам с него. Например, чтобы экспортировать контакты, манипулировать ими или использовать их для других целей. В этой статье вы узнаете, как получить список контактов из Microsoft Exchange Server на Java.

Java API для получения списка контактов с сервера MS Exchange

Для получения контактов мы будем использовать Aspose.Email для Java. API предназначен для реализации почтовых клиентов из приложений Java. Он также позволяет подключаться к серверу MS Exchange и программно выполнять различные операции. Вы можете либо скачать JAR-файл API, либо установить его из Maven, используя следующие конфигурации 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>

Получить список контактов с сервера MS Exchange в Java

Ниже приведены шаги для получения списка контактов из Microsoft Exchange Server в Java.

  • Сначала инициализируйте объект IEWSClient, используя имя пользователя, пароль, домен и URI почтового ящика.
  • Затем вызовите метод IEWSClient.getContacts(EWSClient.getMailboxInfo().getContactsUri()), чтобы получить контакты в массиве.
  • Переберите каждый контакт в массиве и извлеките его детали.

В следующем примере кода показано, как получить контакты с сервера Microsoft Exchange.

// Создайте экземпляр класса IEWSClient, предоставив учетные данные
IEWSClient client = EWSClient.getEWSClient("https://outlook.office365.com/ews/exchange.asmx", "testUser", "pwd",
		"domain");

// Список всех контактов
Contact[] contacts = client.getContacts(client.getMailboxInfo().getContactsUri());

// Цикл по контактам
for (Contact contact : contacts) {
	MapiContact mapiContact = Contact.to_MapiContact(contact);

	// Отображаемое имя и адрес электронной почты
	System.out.println("Name: " + mapiContact.getNameInfo().getDisplayName() + "+ Email Address: "
			+ mapiContact.getElectronicAddresses().getEmail1());
}

Получить контакт с сервера MS Exchange по ID

Вы также можете получить контакт с сервера MS Exchange, используя его идентификатор. Ниже приведены шаги для выполнения этой операции.

  • Сначала инициализируйте объект IEWSClient, используя имя пользователя, пароль, домен и URI почтового ящика.
  • Затем вызовите метод IEWSClient.getContact(String) и получите контакт в объекте Contact.
  • Используйте или манипулируйте контактом по мере необходимости.

В следующем примере кода показано, как получить конкретный контакт с Microsoft Exchange Server в Java.

// Создайте экземпляр класса IEWSClient, предоставив учетные данные
IEWSClient client = EWSClient.getEWSClient("https://outlook.office365.com/ews/exchange.asmx", "testUser", "pwd",
		"domain");

String id = "<<ContactID>>";

// Получить контакт
Contact fetchedContact = client.getContact(id);

// Использовать или манипулировать контактом

Получите бесплатную лицензию API

Получите бесплатную временную лицензию и используйте Aspose.Email для Java без ограничений пробной версии.

Вывод

В этой статье вы узнали, как получить список контактов из Microsoft Exchange Server в Java. Кроме того, вы видели, как программно получить контакт по его идентификатору. Кроме того, вы можете узнать больше об Aspose.Email для Java в документации. Кроме того, если у вас возникнут вопросы, вы можете задать их на нашем форуме.

Смотрите также