我可以通过javascript获取页面访问者的完整浏览器历史记录吗?
Can I get a page visitors full browser history via javascript?
我想制作一个简单的网络应用程序,查看某人的浏览历史记录并根据他们查看的内容推荐新网站,但我遇到了很多安全性和非标准化。基本上,我想知道我正在尝试做的事情是否可能?
我发现 chrome 有一个名为 chrome.history
的特殊属性,它会提示用户授予权限,然后返回一个包含信息的数组,但在对 webkit 进行某种更改后,它似乎不再起作用。Mozilla也有一个名为window.history
的东西,但我不确定它是否有效。
这能做到吗?有什么建议吗?
不,如果有可能,这是一个安全问题。您可以使用 php 中的$_SERVER['REFERRAL']
来查看用户在您的网站上之前可以从哪里获得,但仅适用于非 httpS 网站。
如果有可能,所有这些广告公司都不必使用跟踪cookie:)他们可以简单地检查您的历史记录。
您如何访问浏览器历史记录? 有一些阴暗的选项,我不建议使用所有这些选项。这是试图获得对隐私敏感的用户信息。即使在提示之后,用户也会感到不安全,因为他们不知道他们到底允许你做什么,
这可能在IE中不起作用。所有现代浏览器都非常忙于尝试升级隐私问题,我认为他们不会喜欢这样。
一种方法可能是编写一个可以访问它的浏览器插件,或者使用带有用户浏览的iframe的小顶栏制作您的网站,但这并不理想。
是的,如果您有他们可能访问过的网站列表,则可以这样做。 只要用户意识到他们的浏览器历史记录将用于识别潜在兴趣,我认为requestAnimationFrame
计时技巧是解析访问过的网站的体面方法。
- 演示文稿 https://www.youtube.com/watch?v=KcOQfYlyIqw
- 白皮书 https://media.blackhat.com/us-13/US-13-Stone-Pixel-Perfect-Timing-Attacks-with-HTML5-WP.pdf
您仍然可以使用:visited
但它需要用户单击链接。
- 基于网站基因 http://tinsnail.neocities.org/的配置文件
- 浏览器历史作为 Asteriods 游戏 http://lcamtuf.coredump.cx/yahh/
就像Martijn一样,您不能访问用户的历史记录,因为这是一个安全问题。
但我认为您可以编写自己的chrome/firefox扩展并将其发布到网上商店。
据我所知,chrome.history
工作正常,并且在chrome开发人员的文档中,您可以在此处找到使用:https://developer.chrome.com/docs/extensions/reference/history/
据我所知,只有Chrome和Firefox通过扩展程序提供完整的浏览器历史记录访问。
https://developer.chrome.com/docs/extensions/reference/history/
https://developer.mozilla.org/en-US/docs/XPCOM_Interface_Reference/nsIBrowserHistory
- 将HTML表单发布到iframe会导致浏览器历史记录出现问题
- 制作一个阻止存储在浏览器历史记录中的网页
- 使用服务器路由响应路由器浏览器历史记录
- JS函数在浏览器历史记录中返回特定域的上次浏览页面
- 使jQuery scrollTop不离开浏览器历史记录
- React Router浏览器历史记录适用于本地,而不适用于生产
- jquery cookie,在清除浏览器历史记录后仍然设置
- 通过javascript从浏览器历史记录中删除URL
- 如何防止浏览器在浏览浏览器历史记录时卡在Angular路线上
- 使用Backbone.js处理浏览器历史记录
- 使用javascript获取浏览器历史记录,并通过php打印
- 我们可以使用Javascript获取浏览器历史记录吗
- 通过javascript访问浏览器历史记录,以实现自定义的后退和前进按钮
- 如何操作浏览器历史记录并捕获浏览器后退/前进按钮
- 使用HTML5浏览器历史API的SPA中的页面刷新
- 如何通过js启用/禁用浏览器历史记录
- AJAX POST 浏览器历史记录
- 从客户端读取浏览器历史记录
- 在本地使用浏览器历史记录时刷新页面后数据消失
- 以编程方式查找 Chrome 浏览器历史记录