Java-将原始电子邮件内容文本RFC 822转换为MimeMessage

问题描述 投票:1回答:1

正在寻找将原始电子邮件RFC 822转换为java MimeMessage对象的选项。 MimeMessage具有使用MimeMessage#writeTo将对象转换为原始电子邮件上下文的选项,反之亦然。

背景:

Sendgrid-入站解析调用API并发送了JSON有效内容的原始电子邮件内容部分,我们必须从中收集电子邮件内容和附件文件。

正在寻找将原始电子邮件RFC 822转换为java MimeMessage对象的选项。 MimeMessage具有使用MimeMessage#writeTo,将对象转换为原始电子邮件上下文的选项,自找...

java email sendgrid mime-message
1个回答
1
投票
    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();
    }
© www.soinside.com 2019 - 2024. All rights reserved.