JS浏览器不缓存页面的几种方法--清除浏览器缓存

我们需不需要浏览器缓存?

浏览器缓存,有时我们需要,有时我们不需要,就比如股票类型的网页就需要实时刷新数据,不能让页面从缓存里读取数据,如果对于一些不需要实时更新数据的网站来说,浏览器缓存可以提高加载速度,带来更好的用户体验,到底需不需要浏览器缓存,让我们自己操作!

meta方法

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

清除form表单的缓存

from表单的缓存有助于我们输入的便捷性,但有时为了安全着想还是要清除缓存

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

jquery ajax清除浏览器缓存

直接添加cache:false,每次都向服务器动态请求最新数据

 $.ajax({
     url:'www.ndweb.com',
     dataType:'json',
     data:{},
     cache:false, 
     ifModified :true ,

     success:function(response){
         //操作
     }
     async:false
  });

随机数

向URL链接的最后拼接随机数,也能实现没有缓存,因为每次拼接的随机数不同,链接就是一个新的链接,就不会从缓存中读取.

?ran=" + Math.random()

随机事件

可以向URL链接的最末尾添加随机时间的时间戳,原理跟随机数一致.

?timestamp=" + new Date().getTime()

php方法

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

1.在Ajax发送请求前加上 anyAjaxObj.setRequestHeader ("If-Modified-Since","0")

2.在Ajax发送请求前加上 anyAjaxObj.setRequestHeader ("Cache-Control","no-cache")

3.在URL后面加上一个随机数:"fresh"+Math.random;

4.在URL后面加上时间戳:"nowtime="+new Date.getTime;

5.如果是使用jQuery,直接这样就可以了

$.ajaxSetUp({cache:false}) 6.$.ajax("url",{cache:false,success:function{}})

转载于:https://my.oschina.net/ndweb/blog/733827

  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值