Verbindung zum Exchange‑Server herstellen
Um eine Verbindung zu Exchange‑Servern 2007, 2010 und 2013 über Exchange Web Service herzustellen, stellt Aspose.Email die IEWSClient Schnittstelle, die das EWSClient Klasse. Die EWSClient.getEWSClient Methode erzeugt und gibt ein IEWSClient Objekt, das anschließend verwendet wird, um Vorgänge im Zusammenhang mit einem Exchange‑Postfach und anderen Ordnern auszuführen. Dieser Artikel zeigt, wie Objekte von IEWSClient.
Verbindung zum Exchange‑Server über EWS
Das folgende Code‑Snippet zeigt, wie man sich über Exchange Web Service (EWS) verbindet.
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;
}
Verbindung zum Exchange‑Server über IMAP
Microsoft Exchange Server unterstützt das IMAP‑Protokoll zum Zugriff auf Elemente in einem Postfach. Verwenden Sie Aspose.Email’s ImapClient Klasse, um über das IMAP‑Protokoll eine Verbindung zum Exchange‑Server herzustellen. Weitere Informationen zu ImapClient Klasse. Stellen Sie zuerst sicher, dass IMAP‑Dienste für Ihren Exchange‑Server aktiviert sind:
- Öffnen Sie die Systemsteuerung.
- Gehen Sie zu Administrator‑Tools und dann zu Diensten.
- Überprüfen Sie den Status des Microsoft Exchange IMAP4‑Dienstes.
- Falls es nicht bereits läuft, aktivieren/ starten Sie es.
Das folgende Code‑Snippet zeigt, wie man sich verbindet und Nachrichten aus dem Posteingangs‑Ordner eines Microsoft Exchange‑Servers über das IMAP‑Protokoll auflistet.
// 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();
Das folgende Code‑Snippet zeigt, wie man SSL verwendet.
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();
}
Nach dem Verbinden mit einem Exchange‑Server über IMAP und dem Abrufen des IMapMessageInfoCollection, das folgende Code‑Snippet zeigt, wie man das MessageInfo Sequenznummer des Objekts, um eine bestimmte Nachricht zu speichern.
// 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());
}