发送电子邮件时,有没有办法找出:
- 用户已收到电子邮件(显示在用户的收件箱中)。
- 用户已阅读(以及何时)该电子邮件。
如果不可能,是什么阻止它发现?电子邮件从发件人到收件人的路线是什么。
当您发送电子邮件时,电子邮件会通过一系列使用SMTP(简单邮件传输协议)的服务器进行传输。一旦电子邮件到达目的地,它就会存储到收件人目录中。为了检索和阅读电子邮件,收件人使用 Outlook 等电子邮件客户端,该客户端通过IMAP / POP3连接到服务器,告诉他们他们有多少新电子邮件并将每封邮件传递给客户端。为了获取此信息,用户必须提供他们的凭据。
因此,为了获取此信息,您需要知道收件人域的 imap/pop3 服务器,以及收件人的登录凭据(这将使您可以完全访问收件人的电子邮件帐户)。基本上,这是不可能的。
本文对如何通过 Internet 发送电子邮件提供了一个很好的简单概述。
您可以,并且不需要所选答案中提到的凭据。
假设您正在使用 apache 和 php + mysql。
您向某人发送一封电子邮件,在电子邮件中,您有一个嵌入图像(您的徽标),它驻留在您的服务器上。电子邮件中徽标的 url 指向您服务器上的一个文件:example.com/logo.png?userRelatedId,它是一个 php 文件。使用 htaccess (apache),您可以声明 logo.png 使用 php 执行,实际上转发真实图像和正确的 mimetype,但在此之前标识 userRelatedId,并在访问文件时保存在数据库中,
这意味着电子邮件被人 x 阅读以及访问徽标的时间(查看电子邮件)。