【问题标题】:How to Include a Text Version of Email in JAVA如何在 JAVA 中包含文本版本的电子邮件
【发布时间】:2013-02-25 07:27:54
【问题描述】:

我正在通过 java web 应用程序发送电子邮件,电子邮件仅包含 html 内容。发送给收件人的电子邮件会登陆特定域的垃圾邮件文件夹(例如:mydomain.com)。

所以,当我搜索解决方案时,它说,电子邮件还必须包含纯版本,那么如何在 java 中的 html 邮件中也包含纯版本,我的电子邮件还包含附件。

【问题讨论】:

    标签: jakarta-mail html-email spam sendgrid


    【解决方案1】:

    我找到了解决方案,它工作正常。

    String body ="<html><head></head><body><span>this is a test mail</span></body></html>           
    
    Multipart multiPart = new MimeMultipart("alternative");   // Create an "Alternative" Multipart message
    
                MimeBodyPart text = new MimeBodyPart();
                MimeBodyPart html = new MimeBodyPart();
    
                text.setText(body.replaceAll("\\<[^>]*>","").replaceAll("&nbsp;","").replaceAll("&amp;","&"));  //set the text/plain version
                html.setContent(Jsoup.parse(body).html(), "text/html");     //set the text/html version
    
                multiPart.addBodyPart(text);
                multiPart.addBodyPart(html); 
                message.setContent(multiPart); 
    

    【讨论】:

      【解决方案2】:

      这个JavaMail FAQ entry 将帮助您处理除附件部分之外的所有问题。在继续之前先尝试这个简单的版本并使其正常工作。

      JavaMail FAQ entry 谈论附件。

      您需要将两者结合起来。您需要创建一个包含多部分/混合内容的消息来保存主体和附件。第一个正文部分应该是多部分/替代内容,而不仅仅是纯文本部分。

      如果这还不足以让您入门,请告诉我。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2015-12-20
        • 1970-01-01
        • 2016-02-08
        • 1970-01-01
        • 2022-08-24
        • 2018-02-17
        • 2012-07-17
        相关资源
        最近更新 更多