当前位置: 代码网 > it编程>前端脚本>Ajax > Ajax对缓存的处理方法实例分析

Ajax对缓存的处理方法实例分析

2024年05月19日 Ajax 我要评论
本文实例讲述了ajax对缓存的处理方法。分享给大家供大家参考,具体如下:缓存浏览器的一次请求需要从服务器获得许多的css、img、js等相关文件,如果每次请求都把相关的资源文件加载一次,对带宽、服务器

本文实例讲述了ajax对缓存的处理方法。分享给大家供大家参考,具体如下:

缓存

浏览器的一次请求需要从服务器获得许多的css、img、js等相关文件,如果每次请求都把相关的资源文件加载一次,对带宽、服务器资源、用户等待时间都有严重的损耗,浏览器有做优化处理,其把css、img、js等文件在第一次请求成功后就在本地保留一个缓存备份,后续的每次请求就在本身获得相关的缓存资源文件,可以明显的加快用户的访问速度。

css、img、js等静态文件可以缓存,但是动态程序文件如php文件就不能缓存,即使缓存我们也不要其缓存效果。

禁止浏览器对动态程序文件缓存的方法:

(1)给请求的地址设置随机数[推荐]
(2)给动态程序设置header头信息

给请求的地址设置随机数,避免缓存效果:

<!--10-cache.html-->
<!doctype html>
<html>
  <head>
    <meta charset="utf-8">
    <title></title>
    <script type="text/javascript">
      function f1(){
        var xhr = new xmlhttprequest();
        xhr.open('get', './10.php?' + math.random());//保证每次请求的地址都不一样
        xhr.send(null);
      }
    </script>
  </head>
  <body>
    <h2>ajax发起服务器端的请求(缓存处理)</h2>
    <input type="button" value="触发" onclick="f1()">
  </body>
</html>

10.php

<?php
$fp = fopen("./10.txt", "a");//追加方式打开10.txt文件(文件不存在会自动创建)
fwrite($fp,"java");//给文件写内容
fclose($fp);//关闭文件
?>

给动态程序设置header头信息:

10.php

<?php
//设置header头禁止浏览器缓存当前页面
header("cache-control:no-cache");
header("pragma:no-cache");
header("expirse:-1");
$fp = fopen("./10.txt", "a");//追加方式打开10.txt文件(文件不存在会自动创建)
fwrite($fp,"java");//给文件写内容
fclose($fp);//关闭文件
?>

(0)

相关文章:

版权声明:本文内容由互联网用户贡献,该文观点仅代表作者本人。本站仅提供信息存储服务,不拥有所有权,不承担相关法律责任。 如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 2386932994@qq.com 举报,一经查实将立刻删除。

发表评论

验证码:
Copyright © 2017-2025  代码网 保留所有权利. 粤ICP备2024248653号
站长QQ:2386932994 | 联系邮箱:2386932994@qq.com