簡體   English   中英

Java - 將原始電子郵件內容文本 RFC 822 轉換為 MimeMessage

[英]Java - Convert the Raw Email Content Text RFC 822 to MimeMessage

尋找將原始電子郵件消息 RFC 822 轉換為 java MimeMessage 對象的選項。 MimeMessage 可以選擇使用MimeMessage#writeTo將對象轉換為原始電子郵件上下文,反之亦然。

背景:

Sendgrid - 入站解析調用 API 並發送 json 有效負載的原始電子郵件內容部分,我們必須從中收集電子郵件內容和附件文件。

    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>

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM