首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >JavaMail BASE64_LENGTH_79_INF垃圾邮件

JavaMail BASE64_LENGTH_79_INF垃圾邮件
EN

Stack Overflow用户
提问于 2020-05-18 16:27:59
回答 1查看 127关注 0票数 0

当我尝试通过javamail api发送电子邮件时,发送给receipent的邮件变成了垃圾邮件。原因是BASE64_LENGTH_79_INFMIME_HTML_ONLY

代码语言:javascript
复制
public void sendEmail(String to, String subject, String body, File filename ) {
        String Host = "ip";

        java.util.Properties props = new java.util.Properties();
        props.put("mail.smtp.host", Host);

        javax.mail.Session mailSession = javax.mail.Session.getDefaultInstance(props, null);
        mailSession.setDebug(true);
        MimeMessage message = new MimeMessage(mailSession);
        try {
            message.setFrom(new InternetAddress("some@email"));
            InternetAddress[] address = {new InternetAddress(to)};
            message.setRecipients(Message.RecipientType.TO, address);
            message.setSubject(subject);



        BodyPart messageBodyPart = new MimeBodyPart();

         // Now set the actual message
         messageBodyPart.setContent(body, "text/html; charset=utf-8");

         // Create a multipar message
         Multipart multipart = new MimeMultipart();

         // Set text message part
         multipart.addBodyPart(messageBodyPart);

         // Part two is attachment
         messageBodyPart = new MimeBodyPart();

         DataSource source = new FileDataSource(filename);

         messageBodyPart.setDataHandler(new DataHandler(source));
         System.out.println("-----------------------------------");
         System.out.println(filename.getName());
         messageBodyPart.setFileName(filename.getName());
         multipart.addBodyPart(messageBodyPart);

         // Send the complete message parts
         message.setContent(multipart);     

         // Send message
         Transport.send(message);

         System.out.println("Sent message successfully....");

        } catch (MessagingException ex) {
            ex.printStackTrace();
        }

有没有办法通过这个?

谢谢

EN

回答 1

Stack Overflow用户

发布于 2020-05-18 23:00:44

I want to send HTML emails from my site, but Outlook is flagging them as spam中介绍了MIME_HTML_ONLY

如果对邮件正文部分进行base64编码,JavaMail将使用default of 76 bytes per line。尝试在附加邮件正文部分之前对其进行base64编码。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/61865455

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档