Xóa tin nhắn từ máy chủ
Xóa tin nhắn
Cái ImapClient lớp có thể xóa tin nhắn từ máy chủ IMAP. ImapClient lớp deleteMessage() hàm được sử dụng để xóa tin nhắn. Nó nhận số thứ tự tin nhắn hoặc ID duy nhất làm tham số. ImapClient cung cấp deleteMessage và deleteMessages phương thức để xóa tin nhắn từng cái một hoặc nhiều tin nhắn. Đoạn mã mẫu sau cho bạn thấy cách xóa một tin nhắn email có ID tin nhắn 1 từ máy chủ 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();
}
Xóa nhiều tin nhắn
Có thể xóa nhiều email khỏi hộp thư bằng cách sử dụng ImapClient của API Aspose.Email. deleteMessages phương thức cung cấp một số tùy chọn để xóa nhiều tin nhắn từ máy chủ bằng cách sử dụng ID duy nhất, số thứ tự hoặc ImapMessageInfoCollection phần tử. Đoạn mã mẫu sau cho bạn thấy cách xóa nhiều tin nhắn.
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();
}