我有一个应用程序,当用户在仪表板中登录(存在 cookie)时,他可以注销。当他这样做时,他可以点击浏览器上的历史按钮,这会将他从缓存中带回仪表板。
如果有任何其他方法,则 javascript cookie 检查(在注销后已被删除,并且当 cookie 不存在时将强制 document.location = '/')强制重新加载此页面,因此它将自动被拾取通过我的服务器端身份验证检查?
干杯,
马蒂斯
我有一个应用程序,当用户在仪表板中登录(存在 cookie)时,他可以注销。当他这样做时,他可以点击浏览器上的历史按钮,这会将他从缓存中带回仪表板。
如果有任何其他方法,则 javascript cookie 检查(在注销后已被删除,并且当 cookie 不存在时将强制 document.location = '/')强制重新加载此页面,因此它将自动被拾取通过我的服务器端身份验证检查?
干杯,
马蒂斯
这是我公司用来使页面缓存过期的方法:
<cfheader name="Expires" value="#GetHttpTimeString(Now())#">
<cfheader name="Pragma" value="no-cache">
<cfheader name="cache-control" value="no-cache, no-store, must-revalidate ">
设置标题以使页面缓存过期?这两个标题应该可以解决问题。
Cache-Control: no-cache, must-revalidate
Expires: Thu, 29 Jul 2000 05:00:00 GMT // Any date in the past would do
也许这不是您期望的答案,但您可以设置无限循环(例如,间隔 10 秒),您可以在其中向您的服务器发送 AJAX 请求,该服务器知道 cookie 的真实状态。