是否可以停止在其历史记录中存储URL的浏览器?

时间:2013-01-22 19:09:57

标签: browser

当用户使用上一页上的链接点击某个页面时,目标页面是否可以自行从浏览器历史记录中删除自己的URL(无需对实际具有该页面的页面进行重大修改链接它,除非,它可能是一个简单的HTML属性或其他东西)?

显然我不应该在URL中存储敏感信息,但在某些情况下我必须在URL中存储一些信息,并且虽然它不敏感,但它仍然更好地存储在URL中历史。 (如果用户要在历史记录中显示,这些网址对用户完全没用。)

对于我来说,作为一名webapp开发者,有一种方法可以将这些文件保留在历史之外,至少在某些现代浏览器中是这样吗? (由于URL而加载的页面上的HTTP标题,JavaScript或HTML等内容。)

(我对使用AJAX,iframe等提取页面的技术不感兴趣,其中用户实际上并未导航到所述URL,但仍设法从中获取内容。)

3 个答案:

答案 0 :(得分:7)

看起来这是不可能的。

浏览器历史记录将存储URL。可以做的最好的事情是阻止URL进入后退/前进按钮,或使用“技术,例如使用AJAX,iframe等获取页面,用户实际上并未导航到所述URL,但仍设法从中获取内容“

答案 1 :(得分:3)

使用javascript,您可以使用replace的{​​{1}}方法:

window.location

查看the documentation here了解详情

答案 2 :(得分:1)

某些情况下,发送302 Found响应并重定向到其他页面可能会有效。如果需要隐藏查询字符串参数,可以在初始重定向响应上设置会话cookie,然后使用它们在真实页面上提供响应。只需记住在提供页面时清除cookie。

但这是完全由服务器端完成的方式,虽然您可以隐藏敏感数据,但您仍会在历史记录中看到某些页面。