【问题标题】:How would I capture the timestamp of when a link is clicked in an Email?如何捕获电子邮件中单击链接的时间戳?
【发布时间】:2014-02-26 01:02:32
【问题描述】:

这可能有点棘手(至少对我来说,但你们可能更聪明)。我需要准确捕获读者单击电子邮件中的链接的时间戳。但是,此链接不是指向另一个网页的超链接。它是一个格式为带有查询字符串的 GET 请求的链接,将自动提交表单。

这是棘手的部分......表单处理不是由 PHP 或 .NET 或任何其他服务器端语言处理的。它是一个表单引擎,由基于云的营销平台托管和管理,该平台捕获并显示表单提交数据(因此我无法访问后台代码)。

现在,如果这不是一封电子邮件,我会说它很简单,只需使用 Javascript。但是,javascript 不能很好地处理电子邮件,如果有的话(我只是假设那里有一些支持 javascript 的电子邮件客户端)。

如果不使用任何类型的脚本,您将如何捕获单击链接时的时间戳?这甚至可能吗?

我能想出的最佳解决方案是使用 javascript 将链接指向中间页面以捕获时间戳,然后重定向到表单提交。唯一的问题是它只会捕获页面加载的时间戳,而不是实际点击活动的时间戳。

【问题讨论】:

  • 如果提交时间没有被服务器捕获并且它是一个营销平台,那么这听起来你应该联系服务器的管理员并询问它为什么丢失/是否可以添加它跨度>
  • 显然您没有义务分享,但我很好奇为什么您需要毫秒级的电子邮件点击分辨率。考虑到电子邮件固有的异步性(发送到服务器、客户端检索、用户查看、点击链接……),很难想象这种精确度的价值。无论如何,我认为中间页面方法是你最好的选择。您可以在中间服务器上记录时间戳,而不是在中间页面中使用 JavaScript。
  • “唯一的问题是它只会捕获页面加载的时间戳,而不是实际点击活动的时间戳。”您需要哪种精度类型?原子的?

标签: javascript html forms email


【解决方案1】:

“没有任何类型的脚本”,没有办法做你想做的事。如果没有编写脚本,则不能添加或更改任何功能。

最好的选择就是您建议的那个:使用记录请求时间的中间页面。除非出现异常情况(例如服务器宕机),点击链接到请求到达服务器之间的时间将少于 1 秒。

您真的需要比 ~1s 更高的分辨率或精度吗?毫秒或微秒级的结果有什么额外的好处?我无法想象在这种情况下你会从这样的事情中获得实实在在的好处,但如果你有的话,我很想听听。

【讨论】:

    【解决方案2】:

    我最初的想法是说,如果没有一些脚本功能,您将无法完成您想要做的事情,但我认为这确实取决于您想要完成的整体什么

    虽然您尝试完成的内容与您所写的内容存在歧义,但我会做出一个假设:您正在尝试记录与特定电子邮件的交互。

    根据所需的分辨率,这很有可能——事实上——这是大多数企业多年来一直在做的事情。

    在开始我对该技术的解释之前,请考虑大多数邮件客户端(基于 Web 或其他)中的这种常见功能:

    Click here to display images below
    

    存在这种情况的原因是加载到您正在阅读的邮件中的图像通常来自不是由邮件客户端托管的远程服务器。在请求该图像的过程中,大量关于您自己的信息通过您请求中的 HTTP 标头提供给外部服务器包括,除此之外,时间戳。因此,上面的按钮用于防止在未经您同意的情况下发生这种情况。

    也就是说,同样重要的是要注意其他邮件客户端提供商,尤其是 gmail,现在是如何处理这个问题的。上述技术非常普遍(被广告商和其他更邪恶的团体用于网络钓鱼、恶意软件等目的),以至于谷歌决定自己开始缓存所有邮件图像。结果是电子邮件看起来完全一样,但所有图片请求都指向 Google 的缓存版本。

    长话短说,您可以通过图像请求获取时间戳来记录与电子邮件的交互,但一般来说,这种度量收集,无论是否按照我概述的方式完成,都是邮件客户端试图阻止的事情,在至少在某种程度上。

    编辑 - 要将这与您在问题中提到的内容以及您拥有一些中间页面的想法联系起来,您可以跳过该页面,而是将图像请求指向服务器你控制

    【讨论】:

      猜你喜欢
      • 2011-05-20
      • 2016-01-20
      • 2016-03-22
      • 2017-12-25
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-08-31
      • 1970-01-01
      相关资源
      最近更新 更多