Мне нужно получить заголовки сообщений оригинального сообщения, отправленного из неподтвержденных писем.java - исходные заголовки сообщений из неподтвержденных писем
Цель: проверить, для которых почта ответ есть, для других почт я использую In-Reply-To и Message-ID связать их, но в случае недоставки почты изменения заголовка там в нет такой В ответе поле в заголовке. Если я смогу получить исходные заголовки сообщений, я думаю, что это облако будет разрешено.
Пример кода для того, что я сделал до сих пор
Properties props = System.getProperties();
props.put("mail.smtp.host", AppProperties.getInstance().getEmailHostName());
props.put("mail.smtp.socketFactory.port", AppProperties.getInstance().getEmailSmtpSocketFactoryPort());
props.put("mail.smtp.socketFactory.class", AppProperties.getInstance().getEmailSMTPSocketFactoryClass());
props.put("mail.smtp.auth", AppProperties.getInstance().getEmailSmtpAuth());
props.put("mail.smtp.port", AppProperties.getInstance().getEmailSmtpSocketFactoryPort());
String userid = AppProperties.getInstance().getEmailId();
String password = AppProperties.getInstance().getEmailPassword();
Session session = Session.getInstance(props, null);
Store store = session.getStore("imaps");
store.connect(props.getProperty("mail.smtp.host"), userid, password);
Folder inbox = (Folder) store.getFolder("INBOX");
inbox.open(Folder.READ_WRITE);
FetchProfile profile = new FetchProfile();
profile.add(FetchProfileItem.CONTENT_INFO);
profile.add("X-mailer");
Message[] messages = inbox.getMessages(inbox.getMessageCount() - 10, inbox.getMessageCount());
inbox.fetch(messages, profile);
for (Message message : messages) {
System.out.println(message.getHeader("Message-ID")[0]);
System.out.println(message.getHeader("In-Reply-To")[0]);
}
inbox.close(true);
store.close();
IMAPMessage расширяет MimeMessage. Они есть. – Jan
На самом деле я спрашивал, возвращает ли (content instanceof MultipartReport) false –
Тогда это не правильный отскок от rfc. – Jan