【发布时间】:2011-10-06 02:52:32
【问题描述】:
我正在尝试发送包含嵌入式 gif 图像的多部分/相关 html 电子邮件。此电子邮件是使用 Oracle PL/SQL 生成的。我的尝试失败了,图像显示为红色 X(在 Outlook 2007 和 yahoo 邮件中)
我一直在发送 html 电子邮件,但我现在的要求是在电子邮件中使用几个 gif 图像。我可以将这些存储在我们的一个网络服务器上并链接到它们,但是许多用户的电子邮件客户端不会自动显示它们,并且需要更改设置或为每封电子邮件手动下载它们。
所以,我的想法是嵌入图像。我的问题是:
- 我在这里做错了什么?
- 嵌入方法是否正确?
- 如果我需要使用越来越多的图像,还有其他选择吗?附件不起作用,因为图像通常是徽标和图标,在消息的上下文中没有意义。此外,电子邮件的某些元素是在线系统的链接,因此无法生成静态 PDF 并附加附件(据我所知)。
sn-p:
MIME-Version: 1.0
To: me@gmail.com
BCC: me@yahoo.com
From: email@yahoo.com
Subject: Test
Reply-To: email@yahoo.com
Content-Type: multipart/related; boundary="a1b2c3d4e3f2g1"
--a1b2c3d4e3f2g1
content-type: text/html;
<html>
<head><title>My title</title></head>
<body>
<div style="font-size:11pt;font-family:Calibri;">
<p><IMG SRC="cid:my_logo" alt="Logo"></p>
... more html here ...
</div></body></html>
--a1b2c3d4e3f2g1
Content-Type: image/gif;
Content-ID:<my_logo>
Content-Transfer-Encoding: base64
Content-Disposition: inline
[base64 image data here]
--a1b2c3d4e3f2g1--
非常感谢。
顺便说一句:是的,我已经验证了 base64 数据是正确的,因为我可以将图像嵌入到 html 本身中(使用相同的算法来创建标题数据)并在 Firefox/IE 中查看图像。
我还应该注意,这不是垃圾邮件,电子邮件会发送给每天都在期待它的特定客户。内容是数据驱动的,而不是广告。
【问题讨论】:
-
快速提问:您是在异地托管这些图像还是将它们直接嵌入到电子邮件中?
-
我的问题的一部分,我也可以。我在这里尝试嵌入它们,但没有成功。如果我只是链接到它们,许多用户不先下载它们就看不到图像,我想避免这种情况。
-
普通的
<img src="URL" />为我工作,但这是我在场外托管的图像。这对你不起作用? -
"works" 是主观的......是的,如果用户愿意每次都下载图像,它会起作用,但我想避免这种情况并嵌入图像。
-
@JonLim:感谢您的调查,请在答案中查看我的 cmets,了解我所缺少的内容。
标签: html image oracle email mime