我需要用图像实现电子邮件签名。到目前为止,我们只支持已经可以使用的电子邮件签名中的文本。我需要提供该功能
我可以在邮件签名中插入图像。我可以将电子邮件发送给我的应用程序中的用户,也可以发送给外部邮件域(如 gmail、yahoo 等)上的用户。
邮件被发送给我的应用程序系统中的某个用户,系统会进入数据库,当收件人在收件箱中收到邮件时(内部从数据库读取邮件)。现在如果用户
将邮件发送给 gmail 上的外部用户,它使用 javax mail api 。类似地,我可以从外部邮件域(gmail、yahoo 等)接收电子邮件,现在我有
根据要求提出几个问题:-
1)对于像gmail这样的外部邮件域如何将签名内的图像发送到另一个域(例如(我的应用程序邮件域))是否有任何标准?
与此相关的另一点是,gmail 用户可以有两个图像,一个用于签名,另一个图像位于正文中。我如何确定哪个图像属于
签名?是否有任何定义的属性?
2)也无法确定发送包含以下内容的电子邮件签名的最佳/一致方法是什么(无论是发送给内部应用程序用户还是外部邮件域用户)
图像以便在用户收到它时正确呈现?
我对第 2 点的想法:- 我早些时候认为我可以使用建议的解决方案如何在jsp中显示图片?。在哪里
带标签<.img src="/getImage.action?imageId=123">,我可以从操作类或 servlet 中的数据库获取图像并返回。但请记住
一旦我通过 gmail 将邮件发送给用户,他将无法访问 servlet。所以这种方法似乎不符合要求。然后我发现了另一个很棒的 stackoverflow 链接 电子邮件签名中的 Base64 编码图像在哪里
Tim Medora 的解决方案看起来很棒,但评论又来了下面的解决方案 Gmail 似乎不支持它再次结束了我的乡亲们
我真的认为如果像 gmail、yahoo 这样的邮件域支持建议的解决方案,我应该完成,因为在这种情况下我可以将图像作为 base64 字符串发送
图像作为附件。
如果您能为我提供一些关于第 1 点和第 2 点的指示/方法,人们将非常感激
要在电子邮件中包含图像,首先必须将图像作为 MIME 附件包含在电子邮件中。每个附件都必须有一个“Content-ID”标头。
--f46d0444ea0d6991ba04b91c92e6
Content-Type: image/gif; name="theImage.gif"
Content-Transfer-Encoding: base64
Content-ID: <theImage@abcd>
[base64 string]
--f46d0444ea0d6991ba04b91c92e6--
2) 然后,在电子邮件中,将 Content-ID 包含在src
的属性<img>
tag.
<img src="cid:theImage@abcd" />
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)