Java - преобразование необработанного текста содержимого электронной почты RF C 822 в MimeMessage - PullRequest
1 голос
/ 18 марта 2020

Ищем опцию для преобразования необработанного сообщения электронной почты RF C 822 в java MimeMessage объект. MimeMessage имеет возможность конвертировать объект в необработанный контекст электронной почты, используя MimeMessage # writeTo , лучший внешний вид, наоборот,

Фон:

Sendgrid - входящий синтаксический анализ вызывает API и отправляет необработанную часть содержимого электронной почты json полезной нагрузки, из которой мы должны собирать содержимое электронной почты и файлы вложений.

1 Ответ

1 голос
/ 18 марта 2020
    String rawEmailString = "";
    InputStream targetStream = new ByteArrayInputStream(rawEmailString.getBytes());
    Session session = null;
    MimeMessage mimeMessageObj;
    try {

        // raw message to mime conversion - start

        mimeMessageObj = new MimeMessage(session, targetStream); 

        // raw message to mime conversion - end

        // bonus line of code to play with the message
        MimeMessageParser mimeParser = new MimeMessageParser(mimeMessageObj);
        mimeParser.parse();
        List<javax.mail.Address> to = mimeParser.getTo();
        String from = mimeParser.getFrom();
        String subject = mimeParser.getSubject();
        String bodyPlain = mimeParser.getPlainContent();
        String bodyHtml = mimeParser.getHtmlContent();
        System.out.println("From id >>>>>>>>>> " + from);
    } catch (Exception ex) {
        ex.printStackTrace();
    }

для org.apache.commons.mail.util.MimeMessageParser; вы можете использовать

   <dependency>
        <groupId>org.apache.commons</groupId>
        <artifactId>commons-email</artifactId>
        <version>1.3</version>
    </dependency>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...