历史返回 强制刷新

3
我有一个应用程序,当用户登录后(有一个cookie存在)在仪表板中,他可以注销。 当他这样做时,他可以点击浏览器上的历史按钮,从缓存中返回仪表板。
如果有其他方法来强制重新加载此页面,以便它可以自动被我的服务器端身份验证检查所捕获,而不是使用JavaScript cookie检查(在注销后已被删除,并且当cookie不存在时会强制执行document.location = '/')吗?
问候, Mattijs

2
你尝试过更改缓存头吗? - trebuchet
3个回答

4
这是我的公司用来使页面缓存过期的方法:
<cfheader name="Expires" value="#GetHttpTimeString(Now())#">
<cfheader name="Pragma" value="no-cache">
<cfheader name="cache-control" value="no-cache, no-store, must-revalidate ">

注:以上代码中的标签不要删除。

我们已将它们转换为自定义标签以节省打字。 - Dan Bracuk
我们会自动将它们注入到每个请求中,这样我们的开发人员就不用担心它了。 - Adrian J. Moreno

2

设置头部以使页面缓存过期?这两个头部应该可以解决问题。

Cache-Control: no-cache, must-revalidate

Expires: Thu, 29 Jul 2000 05:00:00 GMT // Any date in the past would do

-1
也许这不是你期望的答案,但是你可以设置一个无限循环(例如,每10秒一次),在循环中发送AJAX请求到服务器上,服务器会知道cookie的实际状态。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接