Nachrichten vom Server löschen
Nachrichten löschen
Die ImapClient Klasse kann Nachrichten von einem IMAP‑Server löschen. Die ImapClient Klasse deleteMessage() Funktion wird verwendet, um Nachrichten zu löschen. Sie nimmt die Nachrichten‑Sequenznummer oder eindeutige ID als Parameter. Die ImapClient stellt bereit deleteMessage und deleteMessages Methoden zum Löschen von Nachrichten einzeln oder mehrfach. Das folgende Codebeispiel zeigt, wie Sie eine E‑Mail‑Nachricht mit der Nachrichten‑ID 1 von einem IMAP‑Server löschen.
try (ImapClient client = new ImapClient("host", "username", "password")) {
client.setSecurityOptions(SecurityOptions.SSLImplicit);
// Append test message
client.selectFolder(ImapFolderInfo.IN_BOX);
MailMessage eml = new MailMessage("from@from.com", "to@to.com");
eml.setSubject("Message to delete");
eml.setBody("Hey! This Message will be deleted!");
String emlId = client.appendMessage(eml);
// Delete appended message
client.deleteMessage(emlId);
client.commitDeletes();
}
Mehrere Nachrichten löschen
Mehrere E‑Mails können aus dem Postfach gelöscht werden mit dem ImapClient der Aspose.Email-API. Die deleteMessages Methode bietet eine Reihe von Optionen, um mehrere Nachrichten vom Server mithilfe eindeutiger IDs, Sequenznummern oder ImapMessageInfoCollection Elemente. Das folgende Codebeispiel zeigt, wie Sie mehrere Nachrichten löschen.
try (ImapClient client = new ImapClient("host", "username", "password")) {
client.selectFolder(ImapFolderInfo.IN_BOX);
// Append test messages
List<MailMessage> emlList = new ArrayList<>();
for (int i = 0; i < 3; i++) {
MailMessage eml = new MailMessage("from@from.com", "to@to.com");
eml.setSubject("Message to delete " + i);
eml.setBody("Hey! This Message will be deleted!");
emlList.add(eml);
}
AppendMessagesResult appendMessagesResult = client.appendMessages(emlList);
List<String> uidList = new ArrayList<>();
for (String uid : appendMessagesResult.getSucceeded().getValues()) {
uidList.add(uid);
}
// Bulk Delete appended Messages
client.deleteMessagesByUids(uidList, true);
client.commitDeletes();
}