【问题标题】:browser back button and session state in asp.netasp.net 中的浏览器后退按钮和会话状态
【发布时间】:2012-08-05 04:34:29
【问题描述】:

我正在尝试处理用户单击浏览器后退按钮时遇到的问题。

  1. 如果我不禁用缓存,页面将从缓存中加载。问题是我在会话对象中保存了数据,并且这些数据与页面显示不同步,因此当用户在该页面上发出进一步请求时我会收到错误。
  2. 如果我禁用缓存,我会在 chrome 上看到“Confirm Form Resubmission”。发生这种情况是因为与 asp.net 页面的交互使用了 post 请求(为了发送视图状态),因此浏览器会询问它是否应该重新提交表单。

这两种可能性对我来说都是有问题的。 处理这个问题的最佳方法是什么?

编辑:

我写了我在下面找到的答案。 在我看来,这是一个黑客。如果有人有更好的解决方案,我会很高兴看到它。

【问题讨论】:

    标签: asp.net back-button browser-history


    【解决方案1】:

    我最终使用了我找到的方法here

    我在服务器端写了一个值为“0”的cookie,表明页面是从服务器加载的。 在javascript中,我检查cookie值是否为“0”。 如果值为“0”,我将 cookie 值覆盖为“1”。 如果值为“1”,我会重新加载页面。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-08-22
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多