【问题标题】:Email with image via external path C#通过外部路径 C# 发送带有图像的电子邮件
【发布时间】:2015-06-24 07:29:15
【问题描述】:

这是一种情况。 我正在发送一封包含图像为 html 正文的电子邮件

<img src="http://www.google.com/images/srpr/logo11w.png" alt="click me" />

收到邮件后图片src改为

<img src="https://bay179.mail.live.com/Handlers/ImageProxy.mvc?bicild=&amp;canary=ei12UmVJE9u9hgMk5TdV12Y1X%2b9Vc365IL%2bmULwd%2bfk%3d0&amp;url=http%3a%2f%2fwww.google.com%2fimages%2fsrpr%2flogo11w.pngf" alt="click me">

因此不渲染图像。以下是用于发送电子邮件的代码

SmtpClient sc = new SmtpClient("smtp.live.com");
            sc.Port = 587;
            sc.UseDefaultCredentials = false;
            sc.Credentials = new NetworkCredential("someemail@hotmail.com", "password");
            sc.EnableSsl = true;
            MailMessage m = new MailMessage();
            m.From = new MailAddress("someemail@hotmail.com");
            m.Subject = "test subject";
            m.IsBodyHtml = true;
            m.Body = "<img src=\"http://www.google.com/images/srpr/logo11w.png\" alt=\"click me\" /><img src=\"https://campaign-uploads.s3.amazonaws.com/newsletter/2015/19Apr_wk17/EN/images/logo.jpg\" />";
            m.To.Add(new MailAddress("someemail@hotmail.com"));
            sc.Send(m);

第一张图片的 url 被更改,第二张图片的 url 保持不变。那么科学是什么? 我不想嵌入图像。

【问题讨论】:

  • 您将需要发布您的代码。在不知道您如何设置图像源的情况下,我们无能为力。
  • 这是 Microsoft/Live/Outlook.com 代理图像作为安全预防措施,所以是关于该设施,而不是 C# - IIRC HTTPS 防止这种情况
  • “因此不渲染图像” - 直到用户点击“显示图像”。
  • 由于嵌入的网址不正确,点击“显示图片”将不起作用
  • 当您说嵌入的 URL 不正确时,您是否希望它只是 google.com 的 URL?或者你的意思是例如ImageProxy URL 中 URI 编码的 google.com URL 上的尾随“f”?还是别的什么?

标签: c# html email


【解决方案1】:

一旦您发送了电子邮件,您就将控制权交给了接收系统。由于防病毒、网络钓鱼等扫描,大多数 MTA 都会进行某种重新格式化。许多人会修改 img 源以使用他们自己的代理。你没有办法阻止他们。您只需与他们合作即可。

【讨论】:

  • 我做了一个 POC,发现在 smtp.live.com 上使用两个不同的图像 URL 发送电子邮件时。一个变了,一个保持不变,所以我认为一定有一种机制认为哪个变了。以下是两个 URL,第二个被更改。 [链接](campaign-uploads.s3.amazonaws.com/newsletter/2015/19Apr_wk17/EN/…)link
  • 它(通常)不是发送 MTA,而是接收 MTA。当您发送到 Google、Hotmail 等时,您会得到不同的结果。
猜你喜欢
  • 2011-08-27
  • 2018-09-20
  • 1970-01-01
  • 2013-10-10
  • 2013-06-01
  • 2015-05-31
  • 1970-01-01
  • 2013-08-17
  • 2012-04-24
相关资源
最近更新 更多