使用JavaMailSenderImpl在电子邮件中发送内联图像

时间:2016-01-07 07:29:38

标签: java spring liferay javamail

您好我发送电子邮件我使用JavaMailSenderImpl并使用message的帮助

创建MimeMessageHelper.

现在,我可以通过电子邮件发送本地机器上的Inline图像。

c:\temp\img.jpg



FileSystemResource res = new FileSystemResource(new File("c:/Temp/img.jpg"));
helper.addInline("identifier1234",res);

我在<img src>中使用

 src ='cid:identifier1234' 

但是现在我想发送本地机器上没有的图像,图像托管在服务器上。和图像只能通过某些URL访问(实际上图像存储在LifeRay数据库中),有没有办法做到这一点?请提前帮助和感谢。

1 个答案:

答案 0 :(得分:0)

AFAIK,只有两种方式。

  1. 图片内容可以是电子邮件的一部分(作为附件),您可以通过cid参考。你做的方式。如果文件是外部文件,您/某些库将需要下载并将其打包到邮件正文中。
  2. 可以通过<img src="" />标记链接外部图片,并将其作为html电子邮件发送。在页面呈现期间,浏览器/邮件客户端下载并显示图像。这里邮件内容并不重,因为图像不是邮件内容的一部分。浏览器/邮件客户端还可以选择显示/隐藏图像。