bug1:在新版微信中,部门安卓机子(华为)出现window.location.href/window.location.reload....等方法来刷新本页面链接,发现页面没有被刷新,经过排查,发现是因为缓存原因。

解决方案:这时候给链接加一个时间戳来解决页面缓存!!!

时间撮:

var myDate = new Date(+new Date()+8*3600*1000).toISOString().replace(/T/g,' ').replace(/\.[\d]{3}Z/,'');

解决缓存方案二:利用pagehide/pageshow 事件

会话(Session)中的某一个页面显示/隐藏时,会触发 pagehide 和 pageshow 事件。 这两个事件都有一个 persisted 属性用来指示当前页面是否被 BF Cache 缓存。 因此可以通过 persisted 属性来达到禁用 BF Cache 的效果:

window.onpageshow = function(event) {if (event.persisted) {

window.location.reload()

}

};

注意 pageshow 不仅在显示被缓存的页面时触发,在第一次加载页面时也会触发。 因此需要检测事件的 persisted 属性,页面第一次加载时它的值是 false。

另外 pageshow 的时机总是在 load 事件之后。 这一点很容易检测,比如下面的代码中 pageshow 日志总在 load 之前打印:

window.addEventListener('pageshow', function () {

console.log('on pageshow')

})

window.addEventListener('load', function () {

console.log('load')

})

XHR 缓存

解决缓存方案三:时间撮或者随机变量

详细参考https://harttle.land/2017/03/12/backward-forward-cache.html

前端清除缓存方法

meta方法 有时候谷歌等浏览器不支持

//不缓存

清理form表单的临时缓存

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

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){//操作

}async:false});

方法二,直接用cache:false

$.ajax({

url:'www.haorooms.com',

dataType:'json',

data:{},

cache:false,

ifModified :true,

success:function(response){//操作

}async:false});

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

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

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

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

方法五:用php后端处理。

在 URL 参数后加上 在服务端加 header("Cache-Control: no-cache, must-revalidate");

php 微信怎么清除缓存,前端清除缓存方法(微信缓存引起的bug)相关推荐

  1. 微信 android 闪退问题怎么解决方法,微信闪退怎么办 微信多开软件闪退解决方法...

    微信多开软件闪退解决问题处理教程 1.首先我们先看看自己手机系统是什么版本的,如果是安卓的要确定一下自己的系统是否是2.1以上的版本!若不是需要进入官网来下载适合自己系统的.查看自己手机版本的方法.点 ...

  2. 微信缓存dat怎么转图片_PC微信dat如何转图片?方式方法

    微信dat转码软件使用操作说明在线解码,各位同学下载软件后,如何操作?如何找到dat文件?如何使用?又有哪些注意事项呢?这里会为大家一一道来.问题1 :如果下载失败怎么办?请先检查网络,软件并没有放在 ...

  3. mysql数据库雪崩_缓存与数据库一致性之三:缓存穿透、缓存雪崩、key重建方案...

    缓存穿透是指查询一个根本不存在的数据,缓存层和存储层都不会命中,但是出于容错的考虑,如果从存储层查不到数据则不写入缓存层,如图 11-3 所示整个过程分为如下 3 步: 缓存层不命中 存储层不命中,所 ...

  4. 微信网页授权(前端)

    前言 前段时间,项目对旧版的微信公众号进行改版,需要对部分页面进行微信授权,我们的网页授权通过前后端进行,前端负责发起请求和调用后台接口,后台负责获取微信端的回调以及提供前端所需的接口.整个微信授权完 ...

  5. Java开发微信公众号之整合weixin-java-tools框架开发微信公众号

    微信开发者接入文档 : https://mp.weixin.qq.com/wiki?t=resource/res_main&id=mp1421135319 微信公众平台测试账号申请: http ...

  6. 微信内置浏览器无法清除缓存问题

    微信开发比较头疼的一个情况就是缓存难以清除,然而奇怪的是微信app在IOS中是可以刷新页面的,但是Android中却不知道基于什么考虑,无法清除 缓存也没有刷新功能,这个就给开发者设置了不小的障碍,哪 ...

  7. 微信小程序开发工具 清除授权缓存/文件缓存/登录缓存等等

    今天2.19.3.25 在开发微信小程序时,作为测试号想清除授权缓存,一直没有找到方法, 最后无意中看到了解决方法 微信小程序开发工具 清除授权缓存/文件缓存/登录缓存等等.完美解决

  8. 【微信小程序】怎样清除微信小程序的缓存?

    小程序会在本地存储数据,当服务器数据更新后,通常在小程序上显示的还是旧的数据,点击右上角的关闭按钮,再次打开小程序同样没有更新.怎样才能完全清除小程序的缓存数据? 这里是清缓存的方法:打开微信的&qu ...

  9. 前端更新需要清空浏览器缓存_js清除浏览器缓存的几种方法

    关于浏览器缓存 浏览器缓存,有时候我们需要他,因为他可以提高网站性能和浏览器速度,提高网站性能.但是有时候我们又不得不清除缓存,因为缓存可能误事,出现一些错误的数据.像股票类网站实时更新等,这样的网站 ...

最新文章

  1. MyBatis3 用log4j在控制台输出 SQL----亲测,真实可用
  2. linux as3.0 sendmail SMTP 验证 成功总结
  3. Lingo计算最优解
  4. 课程作业01——从命令行接收多个数字,求和之后输出结果
  5. python计算工资编程-免费直播 | 编程小白如何通过学习Python获得超高工资
  6. java如何定义构造函数,java 方法定义,方法重载,构造函数
  7. 从山顶透过云层看城市
  8. ubuntu 安装matlab+matconvnet
  9. 解决谷歌浏览器翻译不能用问题
  10. p5140大吉大利 晚上吃鸡
  11. java五子棋网络版源码_网络版五子棋的java源代码.pdf
  12. 计算机磁盘清理软件,Cleanmgr+(电脑磁盘清理软件)
  13. mycat与mysql proxy_高可用Mysql架构_Mycat集群部署(HAProxy + 两台Mycat+Mysql双主双从)...
  14. 【收藏】众多iOS开源资源库
  15. SQL Server-------数据库恢复技术
  16. 全国首个民企卫星智能AIT中心落户浙江台州 吉利全面布局商业卫星领域
  17. Python语言:螺旋式正方形
  18. 基于永磁同步电机的容积卡尔曼滤波ckf转速位置估计,估计效果很好
  19. 短视频运营的目标是什么?
  20. 近地面无人机植被定量遥感与生理参数反演实践技术应用

热门文章

  1. 双网卡teamviewer linux,钉钉远程打卡2019实践录
  2. (编程语言界的丐帮 C#).NET MD5 HASH 哈希 加密 与JAVA 互通
  3. 基于STM32将E18-D80NK和舵机一起联动
  4. 格林深瞳一面、二面、hr
  5. 衡水二中2021清华北大高考成绩查询,衡水中学2020高考成绩多少人考上清华北大...
  6. 百度地图 Api v3.0 自定义信息窗体样式
  7. 深圳电信isp劫持www.google-analytics.com的ga.js来弹出广告窗口分析
  8. 1.莫尔斯编码和布莱叶盲文
  9. 【工作交接】 Touch Screen 模拟按键实现
  10. sql server 数字转大写