|
阅读:132回复:1
清除网页缓存的方法
浏览器缓存:有时候我们需要他,因为他可以提高网站性能和浏览器速度,提高网站性能。但是有时候我们又不得不清除缓存,因为缓存可能误事,出现一些错误的数据。
使用方法:JS或者[backcolor=url("]Jquery 方法一: meta方法用客户端代码使浏览器不再缓存Web页面: <head> <meta http-equiv="Expires" CONTENT="0"> <meta http-equiv="Cache-Control" CONTENT="no-cache"> <meta http-equiv="Pragma" CONTENT="no-cache"> </head> 方法二: 清理form表单的临时缓存 <body onLoad="javascript:document.yourFormName.reset()"> 还可以利用jquery [backcolor=url("]ajax清除浏览器缓存 方式一:用ajax请求[backcolor=url("]服务器最新文件,并加上请求头If-Modified-Since和Cache-Control,如下: $.ajax({ url:' , dataType:'json', data:{}, beforeSend :function(xmlHttp){ xmlHttp.setRequestHeader("If-Modified-Since","0"); xmlHttp.setRequestHeader("Cache-Control","no-cache"); }, success:function(response){ //操作 } async:false }); 方式二:直接用cache:false, $.ajax({ url:' , dataType:'json', data:{}, cache:false, ifModified :true , success:function(response){ //操作 } async:false }); 方法三:用随机数,随机数也是避免缓存的一种很不错的方法! URL 参数后加上 "?ran=" + Math.random();//当然这里参数 ran可以任意取了 方法四:用随机时间,和随机数一样。 在 URL 参数后加上 "?timestamp="+ new Date().getTime(); 所以需要使用一个小技巧,时间戳来使每次的请求地址都不同,从而跳过浏览器的缓存机制实现每次的请求服务器,这样的功能在图片验证码的时候也是比较常用的一种方法。建议这样操作比较好,如果清理缓存,还要设置定时清理器,会比较麻烦。 方法五:用php后端清理 在服务端加 header("Cache-Control: no-cache, must-revalidate"); 以上是网上常用的清除方法,另外在java中可以通过:JAVA后端清除Session缓存方法来实现 session.removeAttribute("user"); session.removeAttribute("constant_cache"); session.invalidate(); 为什么要清除缓存呢,如果想不缓存,每次只要带不同的时间戳就可以了 在IE或者其他的很多浏览器中,如果你每次请求的地址是相同的,浏览器就不会去连接服务器而是去读取缓存,这样对于很多应用来时是非常好的,可以降低服务器的压力或者减少带宽的使用,但是对于ajax应用,很多都是必须保持时时的连接与服务器进行交互 |
|
|
沙发#
发布于:2026-01-09 15:00
https://blog.csdn.net/liwang2016384/article/details/86502344?ops_request_misc=elastic_search_misc&request_id=885861807d33f0514e3c521b03c3f424&biz_id=0&utm_medium=distribute.pc_search_result.none-task-blog-2~all~ElasticSearch~search_v2-3-86502344-null-null.142^v102^pc_search_result_base5&utm_term=%E5%A6%82%E4%BD%95%E6%A0%B9%E6%8D%AE%E6%97%B6%E9%97%B4%20%E6%89%BE%E5%88%B0%E7%BD%91%E9%A1%B5%E7%9A%84%E7%BC%93%E5%AD%98&spm=1018.2226.3001.4187
|
|