我可以通过javascript获取页面访问者的完整浏览器历史记录吗?

时间:2013-09-17 18:17:58

标签: javascript google-chrome browser-history

我想创建一个简单的网络应用程序,查看某人的浏览历史记录,并根据他们所查看的内容推荐新网站,但我遇到了很多安全性和非标准化问题。基本上,我想知道我想要做的事情是否可能?

我发现chrome有一个名为chrome.history的特殊属性,提示用户获得权限,然后返回一个包含该信息的数组,但是在对webkit进行某些更改后它似乎不再起作用了。 Mozilla也有一些名为window.history的东西,但我不确定它是否有效。

可以这样做吗?有什么建议吗?

4 个答案:

答案 0 :(得分:1)

不,如果可能的话,这是一个安全问题。您可以使用php中的$_SERVER['REFERRAL']查看用户在您网站上的位置,但仅限于非httpS网站。

如果有可能,所有这些广告公司都不必使用跟踪Cookie :)他们只需查看您的历史记录。

How do you access browser history?有一些阴暗的选项,所有这些我都不建议使用。这是为了获得隐私敏感的用户信息。即使在提示之后,用户也会感到不安全,因为他们并不确切知道他们允许你做什么,

这可能在IE中无效。所有现代浏览器都非常忙于尝试升级隐私问题,我不认为他们会喜欢这个。


一种方法可能是编写一个可以访问它的浏览器插件,或者使用一个带有iframe的小型顶部栏让你的网站用户浏览,但这并不理想。

答案 1 :(得分:0)

就像Martijn一样,您无法访问用户的历史记录,因为这是一个安全问题。

但我认为您可以编写自己的chrome / firefox扩展并将其发布到网上商店。

据我所知,chrome.history工作正常,并且在chrome开发人员的文档中,您可以在此处找到用法:http://developer.chrome.com/extensions/history.html

答案 2 :(得分:0)

据我所知,只有Chrome和Firefox通过扩展程序提供完整的浏览器历史记录访​​问权限。

https://developer.chrome.com/extensions/history.html

https://developer.mozilla.org/en-US/docs/XPCOM_Interface_Reference/nsIBrowserHistory

答案 3 :(得分:0)

是的,如果您拥有他们可能访问过的网站列表,则可以这样做。只要用户意识到他们的浏览器历史记录将用于识别潜在的兴趣,我认为requestAnimationFrame时间技巧是解析访问过的网站的一种不错的方式。

您仍然可以使用:visited,但需要用户点击链接。