我想知道用户何时打开我发给他的电子邮件。我正在发送一封带有图片的html电子邮件。此图像由通用处理程序处理。目前这个处理程序没有被击中。这是实现目标的好方法吗?
public void ProcessRequest(HttpContext context)
{
byte[] byteArray = System.IO.File.ReadAllBytes(@"c:\temp\Desert.jpg");
context.Response.Clear();
context.Response.ContentType = "image/bmp";
context.Response.BinaryWrite(byteArray);
}
电子邮件正文如下:
"<html><head><title></title></head><body><form name='form1' method='post' action='Default.aspx'><div><img id='Image1' src='ImageHandler.ashx?img=1' style='border-width:0px;' /></div></form></body></html>";
答案 0 :(得分:0)
根据我的知识,没有完美的解决方案。我发现了一篇很好的文章,虽然我还没有实现,但我认为这可能对你有所帮助。
以下是文章
的链接http://www.emailarchitect.net/eagetmail/sdk/html/object_report.htm
答案 1 :(得分:0)
答案 2 :(得分:0)
由于隐私问题日益严重,大多数电子邮件客户端默认阻止访问外部数据,尽管用户可以选择退出此行为。您可以确定用户是否已打开您的电子邮件的唯一方法是让他们访问您服务器上的某些内容并记录该特定内容的所有请求,因为大多数电子邮件客户端都阻止了电子邮件营销公司正在尝试的图像使用其他方式跟踪电子邮件等中的like embedding iframes,
任何技术仍然依赖于用户必须访问发件人服务器上的某些内容的条件,并且随着隐私问题的不断增加,我认为将来不会有可靠的方式来跟踪电子邮件
答案 3 :(得分:0)
您永远无法确定用户是否实际在查看图片,但确保图片实际链接到您的网站可能是个主意:
<img id='Image1' src='http://yourserver.com/ImageHandler.ashx?img=1' style='border-width:0px;' />