Изтриване на съобщения от сървъра
Изтриване на съобщения
Този ImapClient класът може да изтрива съобщения от IMAP сървър. The ImapClient клас deleteMessage() функцията се използва за изтриване на съобщения. Тя приема номера на последователност на съобщението или уникалното ID като параметър. The ImapClient осигурява deleteMessage и deleteMessages методи за изтриване на съобщения едно по едно или по множество. Следният кодов пример показва как да изтриете имейл съобщение с ID 1 от IMAP сървър.
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();
}
Изтриване на множество съобщения
Множество имейли могат да бъдат изтрити от пощенската кутия, използвайки ImapClient от API на Aspose.Email. The deleteMessages методът предоставя редица опции за изтриване на множество съобщения от сървъра, използвайки уникални ID, номера на последователност или ImapMessageInfoCollection елементи. Следният кодов пример показва как да изтриете множество съобщения.
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();
}