我有一个要求,我必须向客户发送电子邮件,我有一个来自数据库(blob 数据)的电子邮件模板。当客户打开电子邮件时,应该在电子邮件中显示一个标题图像。
- 图像将在服务器上不可用
- 该图像将无法在线获得(即在任何在线网站上)。
此图像是客户端标头。如何在不参考任何位置或任何在线网站的情况下嵌入静态图像。
是的,这可以通过在 Base64 中编码图像来实现
有关更多信息,请参阅在没有 src URL 的网页中显示图像
最后你会在你的 html 消息中得到这样的结果:
<img src="data:image/png;base64,iVBORw0KGgoAA.........very_long_string....." />
这个问题的一般解决方案是 multipart MIME。您将图像添加为电子邮件的一部分,并在<img>
标签中使用 cid 引用。
但是,您可能正在使用某个库来发送此电子邮件,在这种情况下,它可能具有用于创建多部分 MIME 消息的 API。
如果您不想从服务器加载图像,那么只有使用 base64 嵌入图像才能锻炼。
请参阅下面的链接以获取更多参考。
http://www.bigfastblog.com/embed-base64-encoded-images-inline-in-html