系统城装机大师 - 固镇县祥瑞电脑科技销售部宣传站!

当前位置:首页 > 网络编程 > AJAX相关 > 详细页面

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

时间:2020-02-03来源:系统城作者:电脑系统城

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

缓存

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

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

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

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

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


 
  1. <!--10-cache.html-->
  2. <!DOCTYPE html>
  3. <html>
  4. <head>
  5. <meta charset="utf-8">
  6. <title></title>
  7. <script type="text/javascript">
  8. function f1(){
  9. var xhr = new XMLHttpRequest();
  10. xhr.open('get', './10.php?' + Math.random());//保证每次请求的地址都不一样
  11. xhr.send(null);
  12. }
  13. </script>
  14. </head>
  15. <body>
  16. <h2>ajax发起服务器端的请求(缓存处理)</h2>
  17. <input type="button" value="触发" onclick="f1()">
  18. </body>
  19. </html>
  20.  

10.php


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

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

10.php


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

更多关于ajax相关内容感兴趣的读者可查看本站专题:《jquery中Ajax用法总结》、《JavaScript中ajax操作技巧总结》、《PHP+ajax技巧与应用小结》及《asp.net ajax技巧总结专题》

分享到:

相关信息

系统教程栏目

栏目热门教程

人气教程排行

站长推荐

热门系统下载