`

js清除浏览器缓存的几种方法

阅读更多

一.关于浏览器缓存

        浏览器缓存,有时候我们需要他,因为他可以提高网站性能和浏览器速度,提高网站性能。但是有时候我们又不得不清除缓存,因为缓存可能误事,出现一些错误的数据。像股票类网站实时更新等,这样的网站是不要缓存的,像有的网站很少更新,有缓存还是比较好的。今天主要介绍清除缓存的几种方法。

 

二.清理网站缓存的几种方法

1.meta方法

//不缓存
<META HTTP-EQUIV="pragma" CONTENT="no-cache"> 
<META HTTP-EQUIV="Cache-Control" CONTENT="no-cache, must-revalidate"> 
<META HTTP-EQUIV="expires" CONTENT="0">

 

2.清理form表单的临时缓存

<body onLoad="javascript:document.yourFormName.reset()">

        其实form表单的缓存对于我们书写还是有帮助的,一般情况不建议清理,但是有时候为了安全问题等,需要清理一下!

 

3.jquery ajax清除浏览器缓存

方法一:用ajax请求服务器最新文件,并加上请求头If-Modified-Since和Cache-Control,如下:

$.ajax({
     url:'www.haorooms.com',
     dataType:'json',
     data:{},
     beforeSend :function(xmlHttp){ 
        xmlHttp.setRequestHeader("If-Modified-Since","0"); 
        xmlHttp.setRequestHeader("Cache-Control","no-cache");
     },
     success:function(response){
         //操作
     },
	 error:function(jqXHR, textStatus, errorThrown) {
		//操作
	 },
     async:false
});

方法二:直接用cache:false

$.ajax({
     url:'www.haorooms.com',
     dataType:'json',
     data:{},
     cache:false, 
     ifModified :true,
     success:function(response){
         //操作
     },
     error:function(jqXHR, textStatus, errorThrown) {
		//操作
	 },
     async:false
});

方法三:用随机数,随机数也是避免缓存的一种很不错的方法!

        URL 参数后加上 "?ran=" + Math.random(); //当然这里参数 ran可以任意取了

方法四:用随机时间,和随机数一样

        在 URL 参数后加上 "?timestamp=" + new Date().getTime(); 

 

4.后端清理

        在服务端加 header("Cache-Control: no-cache, must-revalidate");等等(如php中)

 

PS:JAVA后端清除Session缓存方法

session.removeAttribute("user");
session.removeAttribute("constant_cache");

session.invalidate();

 

文章来源:http://www.haorooms.com/post/js_llq_hc

分享到:
评论

相关推荐

    JS清除IE浏览器缓存的方法

    本文为大家详细介绍下js中自动清除ie缓存的几种方法,大家可以根据自己的需求自由选择适合自己的,希望对大家学习js有所帮助

    庖丁解牛:纵向切入ASP.NET 3.5控件和组件开发技术

    3.3 render呈现控件的几种方式 30 3.3.1 使用htmltextwriter类输出 30 3.3.2 直接输出html标签 32 3.3.3 使用服务器控件的rendercontrol方法 33 3.4 addattributestorender方法 34 3.5 createchildcontrols方法...

    庖丁解牛 纵向切入ASP.NET 3.5控件和组件开发 part1

    3.3 render呈现控件的几种方式 30 3.3.1 使用htmltextwriter类输出 30 3.3.2 直接输出html标签 32 3.3.3 使用服务器控件的rendercontrol方法 33 3.4 addattributestorender方法 34 3.5 createchildcontrols方法...

    庖丁解牛 纵向切入ASP.NET 3.5控件和组件开发 part2

    3.3 render呈现控件的几种方式 30 3.3.1 使用htmltextwriter类输出 30 3.3.2 直接输出html标签 32 3.3.3 使用服务器控件的rendercontrol方法 33 3.4 addattributestorender方法 34 3.5 createchildcontrols方法...

    庖丁解牛纵向切入ASP.NET 3.5控件和组件开发技术.pdf

    3.3 render呈现控件的几种方式30 3.3.1 使用htmltextwriter类输出30 3.3.2 直接输出html标签32 3.3.3 使用服务器控件的rendercontrol方法33 3.4 addattributestorender方法34 3.5 createchildcontrols方法35 ...

    JAVA上百实例源码以及开源项目

    在有状态SessionBean中,用累加器,以对话状态存储起来,创建EJB对象,并将当前的计数器初始化,调用每一个EJB对象的count()方法,保证Bean正常被激活和钝化,EJB对象是用完毕,从内存中清除…… Java Socket 聊天...

    JAVA上百实例源码以及开源项目源代码

    在有状态SessionBean中,用累加器,以对话状态存储起来,创建EJB对象,并将当前的计数器初始化,调用每一个EJB对象的count()方法,保证Bean正常被激活和钝化,EJB对象是用完毕,从内存中清除…… Java Socket 聊天...

    asp.net面试题

    1.new有几种用法 第一种:new Class(); 第二种:覆盖方法 public new XXXX(){} 第三种:new 约束指定泛型类声明中的任何类型参数都必须有公共的无参数构造函数。 2.如何把一个array复制到arrayList里 foreach( ...

    文章管理系统

    2.[改进]网站参数设置 增加 清除JS内容 按钮 3.修复其他几个小细节 2013年09月07日 V2.80更新包 1.[改进]去掉旧版AJAXRequest换成jQuery中的AJAX 2.[改进]为了系统安全和稳定去掉宇初验证码和印象码,加入4种数字...

    计算机应用技术(实用手册)

    这个项目可控制DRAM作用指令与读取/写入指令之间的延迟时间,有2,3,4几种选择。数值越小,性能越好。 DRAM RAS# Precharge: 这个项目是用来控制当预充电(precharge)指令送到DRAM之后,频率等待启动的等待...

    WP主题:HotNewspro 2.72

    主题有四种方法调用显示缩略图: 1. WP自带的特色图像功能,不支持外链,使用方法参考上面的“特色图片功能”。不推荐使用此方法,因为上传一张图片会同时生成三张尺寸不一的缩略图,浪费空间,也不利于以后的管理...

    精易模块[源码] V5.15

    4、修正“文本_逐字分割”返回数组不清除会保留上次内容的问题,感谢易友【@JadeジYu】反馈。 5、新增“文本_是否为双字节字符”与OPenGL支持库-&gt;文字轮廓 中的 是否为双字节字符功能相同。 6、新增“文本_是否为...

Global site tag (gtag.js) - Google Analytics