java发送outlook邮件_如何从Java发送HTML电子邮件到Outlook

我正在尝试使用JavaMail以html格式发送电子邮件,但它似乎始终只在Outlook中显示为文本电子邮件。

这是我的代码:

try

{

Properties props = System.getProperties();

props.put("mail.smtp.host", mailserver);

props.put("mail.smtp.from", fromEmail);

props.put("mail.smtp.auth", authentication);

props.put("mail.smtp.port", port);

Session session = Session.getDefaultInstance(props, null);

// -- Create a new message --

MimeMessage message = new MimeMessage(session);

// -- Set the FROM and TO fields --

message.setFrom(new InternetAddress(fromEmail, displayName));

message.setRecipients(Message.RecipientType.TO, InternetAddress.parse(to, false));

MimeMultipart content = new MimeMultipart();

MimeBodyPart text = new MimeBodyPart();

MimeBodyPart html = new MimeBodyPart();

text.setText(textBody);

text.setHeader("MIME-Version" , "1.0" );

text.setHeader("Content-Type" , text.getContentType() );

html.setContent(htmlBody, "text/html");

html.setHeader("MIME-Version" , "1.0" );

html.setHeader("Content-Type" , html.getContentType() );

content.addBodyPart(text);

content.addBodyPart(html);

message.setContent( content );

message.setHeader("MIME-Version" , "1.0" );

message.setHeader("Content-Type" , content.getContentType() );

message.setHeader("X-Mailer", "My own custom mailer");

// -- Set the subject --

message.setSubject(subject);

// -- Set some other header information --

message.setSentDate(new Date());

// INFO: only SMTP protocol is supported for now...

Transport transport = session.getTransport("smtp");

transport.connect(mailserver, username, password);

message.saveChanges();

// -- Send the message --

transport.sendMessage(message, message.getAllRecipients());

transport.close();

return true;

} catch (Exception e) {

LOGGER.error(e.getMessage(), e);

throw e;

}

有什么想法为什么电子邮件的html版本不会在Outlook中显示?

相关资源:JAVA发送邮件的JAR包
表情包
插入表情
评论将由博主筛选后显示,对所有人可见 | 还能输入1000个字符
相关推荐
©️2020 CSDN 皮肤主题: 游动-白 设计师:白松林 返回首页