Ajax不允许缓存方法

AJAX请求后台时会自动缓存,客户端发起请求首先请求缓存,第一次请求即由缓存再请求服务器,返回数据时同样先返回到缓存再展示再客户端。但是如果数据要求随时性呢,数据变化频率高呢?那么如何不让ajax设置缓存呢?

主要有两种方法:

1、在请求url后面加上随机数或者时间戳:

    例如:ajax.open("get","./service.php?"+Math.random()) 这样每次请求就是不同的请求,每次都要到达服务器。

        其实还是都有缓存,只不过每次访问都是唯一的访问,就不会访问到前次访问。最好是加时间戳,时间戳肯定唯一,随机数可能重复。

2、在服务器端设置header头部信息:

    header{"Cache-Control:no-cache"}

    herder{"Pragma:no-cache"}

    header{"Expires:-1"}

      这样就不会再将服务器端返回的数据进行缓存了。

posted @ 2017-04-19 18:26  $_GET['name']  阅读(2743)  评论(0编辑  收藏  举报