【问题标题】:How do you access browser history?您如何访问浏览器历史记录?
【发布时间】:2010-09-08 02:35:13
【问题描述】:

一些电子营销工具声称可以根据您之前的位置来选择要显示的网页。也就是说,如果您一直在浏览卡车网站,然后访问 Ford.com,那么您的第一页将是 Ford Explorer。

我知道您可以使用 HTTP_REFERRER 获得前一页,但是您怎么知道它们在 6 个站点之前的位置?

【问题讨论】:

    标签: browser-history


    【解决方案1】:

    不相关但相关,如果您只想回看一页而无法访问页面标题,那么document.referrer 会为您提供访问者的来源。

    【讨论】:

      【解决方案2】:

      无法直接访问浏览器历史记录,但您可以将网站列表与用户历史记录进行比较。可以这样做是因为浏览器将不同的 CSS 样式分配给一个未访问过的链接和一个已经访问过的链接。

      使用这种样式差异,您可以使用纯 CSS 更改页面的内容,但通常使用 javascript。这里有一篇关于使用此技巧通过仅显示用户实际使用的 RSS 聚合器或社交书签链接来改善用户体验的好文章:http://www.niallkennedy.com/blog/2008/02/browser-history-sniff.html

      【讨论】:

        【解决方案3】:

        您无法访问浏览器历史记录中条目的值(无论是客户端还是服务器端)。您所能做的就是将浏览器发送回或转发一些步骤。否则,历史记录的条目对编程访问是隐藏的。

        另请注意,如果用户在 URL 栏中键入地址而不是点击指向您页面的链接,则 HTTP_REFERER 将不存在。

        【讨论】:

          【解决方案4】:

          Javascript 这应该让你开始:http://www.dicabrio.com/javascript/steal-history.php
          还有更多的 nefarius 手段:http://ha.ckers.org/blog/20070228/steal-browser-history-without-javascript/
          编辑:我想补充一点,虽然这行得通,但它是一种低俗的营销技巧和对隐私的侵犯。

          【讨论】:

          • 因此在大多数司法管辖区可能是非法的
          • @Mike:我指的是“侵犯隐私”部分。尤其是在欧洲,并不总是允许访问数据,仅仅因为它是可能的。
          • Google 将用户的网络历史记录用于非恶意目的(提高搜索对特定用户的相关性。)
          • @AndersonGreen 跟踪用户本身就是恶意的。不要被 Google 愚弄。
          猜你喜欢
          • 2013-05-21
          • 1970-01-01
          • 2015-06-14
          • 2010-09-08
          • 1970-01-01
          • 1970-01-01
          • 2011-05-19
          • 1970-01-01
          • 2018-02-12
          相关资源
          最近更新 更多