gpt4 book ai didi

java - 在单击电子邮件之前发送显示附件图标的电子邮件中的内嵌图像?

转载 作者:行者123 更新时间:2023-12-02 11:39:00 24 4
gpt4 key购买 nike

我正在使用下面的代码向用户发送电子邮件,它按预期工作。图像显示在电子邮件的 html 中。但最近注意到,在单击电子邮件之前也会显示一个附件图标。这是一个小问题,但有点烦人。很难理解为什么会发生这种情况以及如何阻止它?有任何想法吗?谢谢。

why is this icon showing

public static void send(String useremail, String htmlBody,Map<String, String> mapInlineImages, String subject, String internetAddress, String websiteFrom) throws MalformedURLException{
Properties props = new Properties();
Session session = Session.getDefaultInstance(props, null);
String msgBody = "...";
try {
Message msg = new MimeMessage(session);
msg.setFrom(new InternetAddress(internetAddress, websiteFrom));
msg.addRecipient(Message.RecipientType.TO,new InternetAddress(useremail, "Admin"));
msg.setSubject(subject);
msg.setText(msgBody);
MimeBodyPart messageBodyPart = new MimeBodyPart();
messageBodyPart.setContent(htmlBody, "text/html");
Multipart multipart = new MimeMultipart("related");
multipart.addBodyPart(messageBodyPart);
if (mapInlineImages != null && mapInlineImages.size() > 0) {
Set<String> setImageID = mapInlineImages.keySet();
for (String contentId : setImageID) {
MimeBodyPart imagePart = new MimeBodyPart();
imagePart.setHeader("Content-ID", "<" + contentId + ">");
imagePart.setDisposition(MimeBodyPart.INLINE);
String imageFilePath = mapInlineImages.get(contentId);
try {imagePart.attachFile(imageFilePath);
} catch (IOException ex) {ex.printStackTrace();
}multipart.addBodyPart(imagePart);}}
msg.setContent(multipart);
Transport.send(msg);
} catch (AddressException e) {}
catch (MessagingException e) {}
catch (UnsupportedEncodingException e) {}
}

最佳答案

添加 imagePart.addHeader("Content-Type", "image/jpeg");

关于java - 在单击电子邮件之前发送显示附件图标的电子邮件中的内嵌图像?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48713446/

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