0

好的,我正在使用 form.target 在新窗口中打开内容。但是,当我执行此操作然后单击浏览器上的后退按钮时,我发现由 GET 产生的任何条目正在与服务器进行另一次往返。这是一个问题,因为会话变量可能在过渡期间已更改,因此新的 GET 不再与旧的匹配。

我正在为这个 Web 应用程序使用 C# 和 javascript,如果有帮助的话。

此行为发生在 IE8 上,但不在 Firefox 10 上。有什么方法可以在 IE 中阻止它?

4

1 回答 1

0

我通过在 URL 上添加一个半随机 ID 作为查询字符串解决了这个问题。

我还将它添加到我的 OnInit 事件中。出于某种原因,明确设置缓存设置会有所帮助。

Response.AppendHeader("Cache-Control", "private, max-age=600");

结合起来,这赋予了页面唯一性并强制浏览器缓存。这阻止了浏览器在浏览历史记录中遇到 GET 操作时始终检索页面的最新版本。

于 2012-05-08T18:39:02.937 回答