为何刷新验证码要加入一个随机数

<div class="controls">
    <div class="input-icon left">
        <i class="icon-lock"></i>
        <input class="m-wrap placeholder-no-fix" style="width: 175px;" type="text" placeholder="验证码" name="checkCode"/>
        <img src="{{ URL('captcha/1') }}" id="checkCode" onclick="reloadcode(this)">
    </div>
</div>
<script language="javascript" >
    function reloadcode(obj) {
        obj.src = "{{ URL('captcha/1') }}"+Math.random();
        //这里必须加入随机数否则地址相同会从新加载
    }
</script>

因为浏览器会对同一 url 的图像进行缓存,向减小服务器端的请求次数,提升浏览性能,javascript

利用附加一个随机数,来避免客户端浏览器使用缓存。让每次点击刷新验证码的时候请求的 URL 路径都不一样,告诉浏览器上个图片已经失效了,须要从新向服务器上请求新的图片信息。
由于若是每次都是请求同一个页面,此时客户端浏览器会调用缓存中的页面
而若是你每次都附加一个不一样随机数给url,那么客户端会觉得是新的页面,从而会想服务器请求,这样才能实现每次点击都会刷新验证码的效果java

相关文章
相关标签/搜索