$.ajax({
            type: "GET",
   url: "login.action?ran="+getRandomNum(),
   data: "username="+userName+"&password="+userPass+"&checkbox="+checked,我看好多地方这个url后面都加个随机数  请问这个有什么作用呢?

解决方案 »

  1.   

    这个随机数是作为参数传到action的,想必是action里用到这个参数了
      

  2.   

    欺骗浏览器或代理服务器用的;某些代理服务器会无视 no-cache 之类的标识,对响应结果进行强行缓存。
      

  3.   

    如果你不加,发出请求时,浏览器发现你这次要访问的URL和上次一样,它就会直接在浏览器的缓存中读取之前的数据,就不会进入你的Action,如果你的数据变了,而你没有加戳,那你看到的结果和之前的将会一样。url后面加的随机数就是戳
      

  4.   

    我们知道,浏览器为了提高用户访问同一页面的访问速度,常常会对页面数据进行缓存。而当url请求不改变的时候,有时候会导致浏览器不向服务器发送请求,而直接取调用缓存中的数据。加上随机数就是欺骗浏览器url改变了,要每次向服务器发送请求而不去调用缓存中的数据
      

  5.   

    强制不用缓存既然已经用jquery了,不需要手动加入这个随机数,只需要在全局ajax setup中设置 cache:false, jquery自己帮你加,是同一个效果