除了浏览器本身,如何使用JavaScript或Java来清除浏览器(IE,Firefox,Opera,Chrome)历史logging?

如何清除使用JavaScript或Java的浏览器(IE,Firefox,Opera,Chrome)历史logging,除了从浏览器本身清除它?

浏览器中的document.location数据通常是脚本无法访问的,因为允许访问会让给定的站点访问整个浏览历史logging。 最多可以做一些简单的操作,比如“进入历史logging条目#37”或“返回一页”。 但是你不能做“历史logging#23中的页面地址是什么”。

大多数银行网站将使用JavaScript链接来阻止构build点击logging。 他们将执行document.location.replace“杀死最后一个历史logging(当前页面),并将其replace为新页面的地址。它实际上删除了”返回“选项以返回页面,因为前一个页面(就浏览历史而言)现在是新的页面。

总之,这是不可能的,沙盒防止浏览器和他们运行的脚本/小程序修改甚至创build除less数几个小例外的任何文件。 JavaScript和Java小程序被允许清除其他网站的Cookie或caching中的网站内容将是不可取的。

浏览器无法让您清除caching。 如果可能的话,这将是一个巨大的安全问题

你可以做的是告诉它不要caching你的页面,通过发送适当的标题或使用这些元标记:

<meta http-equiv='cache-control' content='no-cache'> <meta http-equiv='expires' content='0'> <meta http-equiv='pragma' content='no-cache'> 

我想指出的是,如果您使用敏感数据,则应该使用SSL。 如果您不使用SSL,任何有权访问networking的人都可以嗅探networkingstream量,并轻松查看您的用户所看到的内容。

除非明确告知,否则使用SSL也会使一些浏览器不使用caching。 看到这个问题。 networking浏览器会通过httpscaching内容吗?

但是如果你想清除你可以使用的acutally页面:

 $(function () { //replace() does not keep the originating page in the session history, document.location.replace("/Exercises#nocache"); // clear the last entry in the history and redirect to new url });