При программной работе с Microsoft Exchange Server может потребоваться доступ к контактам с него. Например, чтобы экспортировать контакты, манипулировать ими или использовать их для других целей. В этой статье вы узнаете, как получить список контактов из Microsoft Exchange Server на Java.
- API для получения контактов с сервера MS Exchange
- Получить список контактов с сервера MS Exchange
- Получить контакт по ID
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 в документации. Кроме того, если у вас возникнут вопросы, вы можете задать их на нашем форуме.