Підключення до Exchange Server
Для підключення до серверів Exchange 2007, 2010 та 2013 за допомогою Exchange Web Service Aspose.Email надає IEWSClient інтерфейс, який реалізує EWSClient клас. The EWSClient.getEWSClient метод створює та повертає IEWSClient об’єкт, який далі використовується для виконання операцій, пов’язаних з поштовою скринькою Exchange та іншими папками. У цій статті показано, як створювати екземпляри IEWSClient.
Підключення до Exchange Server за допомогою EWS
У наведеному фрагменті коду показано, як підключитися за допомогою Exchange Web Service (EWS).
private static IEWSClient getExchangeEWSClient() {
final String mailboxUri = "https://outlook.office365.com/ews/exchange.asmx";
final String domain = "";
final String username = "username@onmicrosoft.com";
final String password = "password";
NetworkCredential credentials = new NetworkCredential(username, password, domain);
IEWSClient client = EWSClient.getEWSClient(mailboxUri, credentials);
return client;
}
Підключення до Exchange Server за допомогою IMAP
Microsoft Exchange Server підтримує протокол IMAP для доступу до елементів у поштовій скринці. Використовуйте ImapClient клас для підключення до Exchange Server за допомогою протоколу IMAP. Для отримання додаткової інформації про ImapClient клас. По-перше, переконайтеся, що служби IMAP увімкнені для вашого Exchange Server:
- Відкрийте Панель управління.
- Перейдіть у Administrator Tools, потім у Services.
- Перевірте стан служби Microsoft Exchange IMAP4.
- Якщо він ще не запущений, увімкніть/запустіть його.
У наведеному фрагменті коду показано, як підключитися та вивести список повідомлень з папки Inbox Microsoft Exchange Server за допомогою протоколу IMAP.
// Connect to Exchange Server using ImapClient class
ImapClient imapClient = new ImapClient("ex07sp1", "Administrator", "Evaluation1");
imapClient.setSecurityOptions(SecurityOptions.Auto);
// Select the Inbox folder
imapClient.selectFolder(ImapFolderInfo.IN_BOX);
// Get the list of messages
ImapMessageInfoCollection msgCollection = imapClient.listMessages();
for (ImapMessageInfo msgInfo : (Iterable<ImapMessageInfo>) msgCollection) {
System.out.println(msgInfo.getSubject());
}
// Disconnect from the server
imapClient.dispose();
У наведеному фрагменті коду показано, як використовувати SSL.
public static void run() {
// Connect to Exchange Server using ImapClient class
ImapClient imapClient = new ImapClient("ex07sp1", 993, "Administrator", "Evaluation1");
imapClient.setSecurityOptions(SecurityOptions.SSLExplicit);
// Select the Inbox folder
imapClient.selectFolder(ImapFolderInfo.IN_BOX);
// Get the list of messages
ImapMessageInfoCollection msgCollection = imapClient.listMessages();
for (ImapMessageInfo msgInfo : (Iterable<ImapMessageInfo>) msgCollection) {
System.out.println(msgInfo.getSubject());
}
// Disconnect from the server
imapClient.dispose();
}
Після підключення до сервера Exchange за допомогою IMAP та отримання IMapMessageInfoCollection, У наведеному фрагменті коду показано, як використовувати MessageInfo послідовний номер об’єкта для збереження конкретного повідомлення.
// Select the Inbox folder
imapClient.selectFolder(ImapFolderInfo.IN_BOX);
// Get the list of messages
ImapMessageInfoCollection msgCollection = imapClient.listMessages();
for (ImapMessageInfo msgInfo : (Iterable<ImapMessageInfo>) msgCollection) {
// Fetch the message from inbox using its SequenceNumber from msgInfo
MailMessage message = imapClient.fetchMessage(msgInfo.getSequenceNumber());
// Save the message to disc now
message.save(dataDir + msgInfo.getSequenceNumber() + "_out.msg", SaveOptions.getDefaultMsgUnicode());
}