【发布时间】:2011-07-24 02:46:45
【问题描述】:
我正在使用 C# 代码生成电子邮件。
在邮件正文中,我想添加一个静态 Google 地图。要创建静态 URL,我有以下代码
string addr = "111 Remote Drive Cary,NC 27511";
string mapU = "http://maps.google.com/maps/api/staticmap?center=" +
addr + HttpUtility.HtmlEncode("&zoom=14&size=512x512&maptype=roadmap&sensor=false&markers=color:green|") +
addr;
此字符串 mapU 作为 img 标签的 src 添加到消息正文中。
当电子邮件发送到 Google Mail 帐户时,不会显示静态图像。检查损坏图像上的元素有
<img src="http://maps.google.com/maps/api/staticmap?center=111+Remote+Drive++Cary%2CNC+27511%26zoom%3D14%26size%3D512x512%26maptype%3Droadmap%26sensor%3Dfalse%26markers%3Dcolor:green%7C111+Remote+Drive++Cary,NC+27511">
Gmail 正在将 '=' 替换为 %3D,这似乎打破了这一点。
将完全相同的消息发送到 Hotmail 可以正常工作。图像按预期显示在正确的位置。 Hotmail 保持“=”不变。
您知道 Gmail 发生了什么吗?建议如何解决这个问题?
谢谢 阿比
【问题讨论】:
-
我遇到了同样的问题 Abhi - 你解决了吗?
标签: c# gmail html-email