gpt4 book ai didi

java - 为什么我的电子邮件方法总是发送电子邮件并将电子邮件本身作为附件?

转载 作者:行者123 更新时间:2023-12-02 04:28:51 26 4
gpt4 key购买 nike

尝试发送带有 Excel 附件和一些正文的电子邮件。无论出于何种原因,我收到的电子邮件始终是一封包含我想要作为附件发送的电子邮件的电子邮件,然后 Excel 本身会附加到所附电子邮件中...

是否有一些属性可以禁用此行为?

public void sendEmailWithAttachment(EmailProperties properties) {
MimeMessage message = javaMailSender.createMimeMessage();

try {
message.setFrom(properties.getFrom());
message.setHeader("X-Mailer", properties.getHeader());

if (properties.getPriority() != null) {
message.setHeader("X-Priority", properties.getPriority().getValue());
}

InternetAddress[] toEmailArray = properties.getToAddresses().toArray(new InternetAddress[properties.getToAddresses().size()]);

message.setRecipients(javax.mail.Message.RecipientType.TO, toEmailArray);
message.setSubject(properties.getSubject());
message.setSentDate(new Date());

Multipart multipart = new MimeMultipart();
if (StringUtils.isNotBlank(properties.getMessageText())) {
MimeBodyPart mimeBodyPart = new MimeBodyPart();
mimeBodyPart.setText(properties.getMessageText());
multipart.addBodyPart(mimeBodyPart);
}

MimeBodyPart mimeBodyPart = new MimeBodyPart();
mimeBodyPart.setDataHandler(new DataHandler(new ByteArrayDataSource(properties.getContents(), properties.getContentType())));
mimeBodyPart.setFileName(properties.getFileName());
multipart.addBodyPart(mimeBodyPart);

message.setContent(multipart);

send(message);
} catch (Exception exc) {
logger.error("Error attempting to send email!", exc);
}
}

最佳答案

我已经弄清楚,如果电子邮件不包含正文,则发送的电子邮件会将电子邮件作为附件。一旦有正文,电子邮件看起来很正常,它显示正文,然后显示 Excel 作为附件...只是为什么...

关于java - 为什么我的电子邮件方法总是发送电子邮件并将电子邮件本身作为附件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45988065/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com