当用户点击浏览器的后退按钮时,我将需要我的页面来刷新图像。这是一个验证码,出于某种原因,“返回”页面正在加载旧的验证码,该代码将不再有效。
我尝试添加<img src="captcha.jpg?"<?php echo time(); ?> />
,但可以肯定的是,图像是在缓存中找到的。(我们几秒钟前加载了它:))
谢谢!
您可以使用:使用 http-equiv 元标记的缓存控制,
<meta http-equiv="cache-control" content="no-cache" />
在您的页面头标签中。
这将强制浏览器不查看缓存的内容。并生成一个请求源并将结果带到新的请求中。
您可以在这里进一步查看:http ://www.metatags.org/meta_http_equiv_cache_control 希望这会有所帮助。
好的,只是一个建议:
使用 javascript,您可以检测单击的后退按钮,请参阅此主题:http ://www.bajb.net/2010/02/browser-back-button-detection/
然后在管理事件的代码中执行 ajax 调用或更新图像所需的任何操作
也使用 php 标头,它会帮助你很多
header("Expires: Thu, 19 Nov 1981 08:52:00 GMT");
header("Cache-Control: no-store, no-cache, must-revalidate, post-check=0, pre-check=0");
header("Pragma: no-cache");
和html标签
<META HTTP-EQUIV="Expires" CONTENT="0">
<META HTTP-EQUIV="Pragma" CONTENT="no-cache">
<META HTTP-EQUIV="Cache-Control" CONTENT="no-cache">
<META HTTP-EQUIV="Cache-Control" CONTENT="no-store">
在客户端使用window.onpageshow
事件并使用 AJAX 刷新 CAPTCHA。