我使用HTML 5历史api来保存Ajax请求发生时的状态,如果用户请求同一页面没有ajax请求,我提供完整的html内容。“重新打开最后关闭的选项卡”导致显示最后一个Ajax请求内容
浏览器的“重新打开最后关闭的选项卡”功能会将最后一个Ajax请求内容带到服务器。如果浏览器请求不带最后的请求内容,那么一切都会毫无问题地工作。但浏览器只显示最后的ajax请求内容。
我已经经历过这个在Chrome 17,Firefox的10。(我还没有尝试过在IE9,因为它不支持历史API)
什么是众所周知的解决方案,这个问题?
编辑:这些ajax请求只是“获取”请求到服务器。
真的不可能在jsfiddle.net中演示它,因为几个原因。您可以在下面的localhost中演示它。
向服务器发出“请求”请求,并拉动json对象,然后将该url推入历史api中,如下所示。
history.pushState(null,null,url);
然后关闭该选项卡,然后单击浏览器的“重新打开最后关闭的选项卡”功能。你看到了什么 ? Json响应正文?浏览器显示它没有向服务器发出请求,对吗?
任何人有一个想法? – Freshblood 2012-02-25 16:57:11
你可以发布一些代码,或链接到一个页面来演示这个问题吗? – robertc 2012-02-25 22:29:37
@robertc我更新了问题并提供了演示信息。 – Freshblood 2012-02-26 01:29:24