Ajax对缓存的处理方法实例分析
本文实例讲述了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);//关闭文件 ?>
更多关于ajax相关内容感兴趣的读者可查看本站专题:《jquery中Ajax用法总结》、《JavaScript中ajax操作技巧总结》、《PHP+ajax技巧与应用小结》及《asp.net ajax技巧总结专题》
希望本文所述对大家ajax程序设计有所帮助。
栏 目:AJAX相关
下一篇:Ajax请求跨域问题解决方案分析
本文标题:Ajax对缓存的处理方法实例分析
本文地址:https://www.xiuzhanwang.com/a1/AJAXxiangguan/11270.html
您可能感兴趣的文章
阅读排行
本栏相关
- 01-11layui的checbox在Ajax局部刷新下的设置方
- 01-11ajax请求后台得到json数据后动态生成树
- 01-11ajax获得json对象数组 循环输出数据的
- 01-11解决ajax请求后台,有时收不到返回值的
- 01-11详谈ajax返回数据成功 却进入error的方
- 01-11解决AJAX返回状态200没有调用success的问
- 01-11快速解决ajax返回值给外部函数的问题
- 01-11Ajax实现动态显示并操作表信息的方法
- 01-11ajax实现从后台拿数据显示在HTML前端的
- 01-11ajax动态查询数据库数据并显示在前台
随机阅读
- 01-11ajax实现页面的局部加载
- 08-05dedecms(织梦)副栏目数量限制代码修改
- 01-10C#中split用法实例总结
- 01-11Mac OSX 打开原生自带读写NTFS功能(图文
- 04-02jquery与jsp,用jquery
- 08-05织梦dedecms什么时候用栏目交叉功能?
- 01-10delphi制作wav文件的方法
- 01-10SublimeText编译C开发环境设置
- 08-05DEDE织梦data目录下的sessions文件夹有什
- 01-10使用C语言求解扑克牌的顺子及n个骰子