2009-06-04 133 views

回答

2

检查电子邮件是否被读取的常用方法是web beacon,它通常是一个小的1x1px不可见图像,从您的服务器加载,它可以跟踪图像何时加载并因此读取了电子邮件。

但是,这并不能保证能够正常工作,因为许多电子邮件客户端会阻止他们的电子邮件中的图像,或者您的读者可能正在使用纯文本的电子邮件客户端。

4

最终显然没有获得通知的傻瓜式方法,因为没有保证让电子邮件客户端以某种方式回应的方式;可以将电子邮件客户端设置为仅将收到的电子邮件解释为ASCII文本,仅此而已,并且您无法对此做任何事情。

但是;在大多数情况下,如果您通过电子邮件发送给期待电子邮件的用户,则可能是因为您的源地址打开了HTML呈现和内嵌图像,因此使用内联IMG标记并监视对引用文件的访问权限(显然,参考文献中的用户唯一ID)应该能够为您提供最好的服务。

无论如何,你永远无法做出这样的假设:如果你没有收到通知,那就意味着用户有而不是看到了电子邮件。

3

是的,有一个标准的机制(RFC 3798)称为阅读回执。它由所有现代邮件客户端实现,并且用户可以选择发送(或不发送)他们选择的收件人。

在没有得到用户同意的情况下,也有各种各样的非标准诡计,我不会详细说明。

编辑:

它应该像下面的(使用内置的PHP mail功能):

mail("[email protected]", "Let me know if you get this", "Important message", "Disposition-Notification-To: [email protected]\r\n"); 
+0

你听说过使用这种机制的类或代码吗? (PHP) – 2009-06-04 06:09:32

1

每个电子邮件都有对应于用户来说,唯一命名的图像帐户(或DB行),当该图像被加载或访问时,您可以看到哪个用户打开了电子邮件。这依赖于用户收到HTML电子邮件。

3

由于您不是控制电子邮件客户端的人,因此没有万无一失的方法来实现它。许多人认真对待自己的隐私,以防止阅读收据,网络信标以及可用于检测阅读的所有其他技巧(人们可以关闭阅读收据,阻止图像,阻止未经请求的传出连接等)。

这是我的看法,但我相信你是以错误的方式接近问题的。与其试图强迫用户告诉你他们是否阅读过电子邮件,只是让它值得一段时间。获得这些信息显然对你有好处(否则为什么要这么做?),所以你可以分享这些好处并确保它是用户的决定。

这样,你将战场上的关系变成了伙伴关系(双赢)。

相关问题