如果两次访问同一页面,则进行缓存:后退按钮仅显示第二次查看的数据

时间:2012-11-28 08:49:17

标签: html caching http-headers

我正在创建一个网页,并且在页面上的后退按钮的工作原理方面存在一些问题。我猜我需要设置一些标题,但不知道哪些或如何。这就是我所看到的:

(1)转到主页面,显示论坛帖子。

(2)单击链接转到显示主题的页面。在此页面上,向下滚动并添加评论。

(3)评论通过表格保存(编辑:我已尝试过POST和GET表格)。现在通过重定向重新加载相同的线程页面。评论显示。

在Chrome中:此时按后退按钮仍会将评论显示为已添加。看起来好像后退按钮不起作用。但是,页面向下滚动(2)。再次单击后退按钮将显示主页面。因此,后退按钮确实会将我带回来,但如果同一页面有两次,它会同时显示新数据。

在IE9中:按后退按钮显示“网页已过期”。再次单击它会将我带到主页面。

如何更改此行为,以便后退按钮真正显示上一页?

(我这样做的原因是我跟踪主页上有多少页面,所以我可以生成一个“返回主页面”链接。(2)上面有history.go(-1) )和(3)上面有history.go(-2)。如果用户从(3)按下浏览器后退按钮,这将不起作用,因为它现在距主页1,但显示链接( 3)。

1 个答案:

答案 0 :(得分:0)

在步骤(3)中,您可能有一个POST,它返回线程页面的新HTML。相反,POST应该重定向到线程页的GET。

请参阅http://en.wikipedia.org/wiki/Post/Redirect/Get