我正在发送带有嵌入图像(作为附件)的 HTML 电子邮件,图像在 GMail 中按预期显示。然而,它们也显示为电子邮件下的附件。有谁知道如何避免这种情况,即我只希望它们出现在电子邮件中,而不是作为附件列出。我使用了“Content-Disposition:inline”。我正在使用 Spring 和 JavaMail。
这是我的邮件最终的样子。谁能看出哪里出了问题?
Delivered-To: ...
...
Subject: ...
MIME-Version: 1.0
Content-Type: multipart/mixed;
boundary="----=_Part_0_1248835444.1288246311187"
------=_Part_0_1248835444.1288246311187
Content-Type: multipart/related;
boundary="----=_Part_1_592250078.1288246311197"
------=_Part_1_592250078.1288246311197
Content-Type: text/html; charset=us-ascii
Content-Transfer-Encoding: 7bit
Content-Disposition: inline
<html>
<body>
<p><img src="cid:a0"/></p>
</body>
</html>
------=_Part_1_592250078.1288246311197
Content-Type: image/x-png
Content-Transfer-Encoding: base64
Content-Disposition: inline
Content-ID: <a0>
iVBORw0KGgoAAAANSUhEUgAAAPAAAABQCAYAAAAnSfh8AAAACXBIWXMAAC4jAAAuIwF4pT92AAAA
...
Qcz8hzyUxqGHjkNbsY4Df5iBg6OIwafQHBxFjP8PAIwl43uhncLdAAAAAElFTkSuQmCC
------=_Part_1_592250078.1288246311197--
------=_Part_0_1248835444.1288246311187--
最佳答案
可以按照以下步骤从 GMail 中获取这样的邮件正文:
- 在 Gmail 实验室中启用“插入 Kent T 图片”
- 写邮件并在邮件中嵌入图片
- 把邮件发给自己
- 打开邮件。在右上角,按带有向下箭头的图片(靠近回复的右侧),然后按“显示原件”。您会在那里找到此类邮件的示例。
我这样做并得到以下结果,其中图像未列为附件。也许这个邮件正文可以帮助您使用 Spring 和 JavaMail 创建一个合适的邮件:
MIME-Version: 1.0
...
Subject: ...
From: ...
To: ...
Content-Type: multipart/related; boundary=000e0cd62fb69a9c280493a7a1c0
--000e0cd62fb69a9c280493a7a1c0
Content-Type: multipart/alternative; boundary=000e0cd62fb69a9c250493a7a1bf
--000e0cd62fb69a9c250493a7a1bf
Content-Type: text/plain; charset=ISO-8859-1
[image: abc.png]
--000e0cd62fb69a9c250493a7a1bf
Content-Type: text/html; charset=ISO-8859-1
<img src="cid:ii_12bf191c5eab934e" alt="abc.png" title="abc.png"><br>
--000e0cd62fb69a9c250493a7a1bf--
--000e0cd62fb69a9c280493a7a1c0
Content-Type: image/png; name="abc.png"
Content-Transfer-Encoding: base64
Content-ID: <ii_12bf191c5eab934e>
X-Attachment-Id: ii_12bf191c5eab934e
iVBORw0KGgoAAAANSUhEUgAAAJ4AAADLCAIAAAAQpL1oAAAACXBIWXMAAA7EAAAOxAGVKw4bAAAA
...
关于java - 如何阻止 GMail 将电子邮件中的嵌入图像显示为附件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4040358/