Javascript JS函数更新验证码图像
我不知道为什么,但是我的重新加载图像的功能在prod上不起作用,但是在dev上,它很好。 网址: 点击链接“无法读取验证码?点击这里!” 图像保持不变。。。但在我的dev上,它更新得很好Javascript JS函数更新验证码图像,javascript,jquery,Javascript,Jquery,我不知道为什么,但是我的重新加载图像的功能在prod上不起作用,但是在dev上,它很好。 网址: 点击链接“无法读取验证码?点击这里!” 图像保持不变。。。但在我的dev上,它更新得很好 有什么想法吗?当您更改图像的src时,浏览器不会获得新图像,因为URL是相同的。要修复此问题,您需要确保URL是唯一的。在reloadCaptcha功能中,将更改行设置为: jQuery('#captcha_img').attr('src', '/user/generate_captcha?' + Date.n
有什么想法吗?当您更改图像的src时,浏览器不会获得新图像,因为URL是相同的。要修复此问题,您需要确保URL是唯一的。在
reloadCaptcha
功能中,将更改行设置为:
jQuery('#captcha_img').attr('src', '/user/generate_captcha?' + Date.now());
请注意URL末尾的更改。这样,浏览器总是认为它得到了一个新的图像,它会按预期工作。在URL中添加一个缓存buster以防止缓存:
function reloadCaptcha() {
jQuery('#captcha_img').attr('src', '/user/generate_captcha?cb='+(new Date().getTime()));
}
正在缓存图像。
生成验证码脚本是否禁用缓存?尝试向URL添加缓存阻止程序。为什么不在查询字符串末尾添加日期时间?为什么更改为使用日期时间?@cgatian刚刚意识到真正的问题不是服务器缓存控制,而是浏览器没有加载图像,因为URL是相同的。从技术上讲,问题不是缓存,而是浏览器无法识别图像URL更改。