电子邮件图片未显示 (Gmail)
Posted
技术标签:
【中文标题】电子邮件图片未显示 (Gmail)【英文标题】:Email Image not Showing (Gmail) 【发布时间】:2017-10-26 21:50:09 【问题描述】:我用 html 编写了一封电子邮件,里面有一张图片。
图像“src”属性的 URL 指向我的服务器 (ASP.Net) 上的控制器操作端点,该端点返回 FileContentResult。
img 标签的示例如下所示:
<img src="https://www.mywebsite.com/controller/action?argument=value" title="HeadingImage">
电子邮件在 Outlook 中按预期显示。
如果我从 Outlook 获取源代码并在 Chrome 桌面上查看它,它仍然可以正常工作。
如果我在 Chrome 中访问 img URL,图片就会被下载。
但是,如果我在 Gmail 中查看电子邮件,图像不会显示。为什么会这样? 我在控制台中收到一个错误,如下所示:
ci6.googleusercontent.com/proxy/<SNIP>https://www.mywebsite.com/controller/action?argument=value GET https://ci6.googleusercontent.com/proxy/<SNIP> 404 ()
【问题讨论】:
任何控制台错误? 检查 IIS 在以下位置生成的日志文件:C:\inetpub\logs\LogFiles\W3SVC1 我看不到任何错误,只是我认为端点被击中。 不,好的,您所说的viewing in gmail
是什么意思? Gmail.com
在浏览器中?如果是,浏览器控制台在您查看时是否显示任何错误?
对,在 Gmail 和 Chrome 中查看电子邮件时,图像出现一个 404 错误.... ci6.googleusercontent.com/proxy/你好,你可以用这个对我有用
在 src url 中包含方案(使用“//”不起作用 - 使用完整方案 EG:“https://”) 包括宽度和高度属性 包括 style="display:block" 属性 包括 alt 和 title 属性
【讨论】:
谢谢,但我最初在我的示例中缺少协议......它仍然不适用于协议。我尝试了您的其他建议,即添加显示设置为“块”的内联样式,但仍然没有成功。另外,我已经指定了宽度、高度、alt 和标题属性。【参考方案2】:只需在图片src
中添加http://
<img src="http://www.mywebsite.com/controller/action?argument=value" title="HeadingImage">
【讨论】:
对不起,我的错误。我在示例中遗漏了这个......它仍然不适用于协议。【参考方案3】:首先,您需要将该图像添加到已部署的项目文件夹中,然后您需要指定图像的路径:
<img src="http://www.mywebsite.com/Images/YourImage.png" />
干杯!!
【讨论】:
谢谢,但我需要根据参数动态生成图像。这就是它当前指向控制器操作的原因。以上是关于电子邮件图片未显示 (Gmail)的主要内容,如果未能解决你的问题,请参考以下文章
CodeIgniter 上的 SMTP 显示成功,但电子邮件未发送到 Gmail 帐户
对于从 java 程序发送的电子邮件,html 内容中的 png 图像未显示在 gmail 客户端上