Adnroid 微信内置浏览器清除缓存


Posted in PHP onJuly 11, 2016

      微信开发比较头疼的一个情况就是缓存难以清除,然而奇怪的是微信app在IOS中是可以刷新页面的,但是Android中却不知道基于什么考虑,无法清除缓存也没有刷新功能,这个就给开发者设置了不小的障碍,哪有页面是最好就不改的,然后如果去改,微信浏览器缓存着css、图片,这样改完后看效果就变得相对费劲了。
      我上网查过,遇到这个蛋疼问题的不止我一个,寻寻觅觅却找不到解决办法的也不止我一个,有人说去微信“设置”、“通用”中“清除微信存储空间”,我想问,兄弟你这样弄成功了吗?这个清理看似根本不是清理缓存,是去清理自己的聊天记录啊,就算你能清理掉缓存,聊天数据也没有了,难道你作为开发者就要这么苦逼,舍己为项目?
      还有人说用什么杀毒软件、系统工具去清理存储空间,我也试过,感觉好像有的时候可以,有的时候不灵,而且是有个工具软件可以有的不行,开发最怕这种时灵时不灵的感觉,要么就是好使要么就直接不好使,不然反复浪费时间在里面。
      ……
      最后我也是没有折了,想到一个早该想到的办法:在文件路径后面加上一个随机数。真是豁然开朗啊!对于PHP写的程序那就更加简单了,用PHP生成一个随机数,然后再html的文件路径后面加上这个随机数即可。

一,PHP 开发

  PHP代码:

$rand = rand(10000,99999);

html代码:

<img src="header.jpg?rand=<?php echo $rand; ?>"

二,使用meta头信息实现取消了微信浏览器的缓存

做微信公众号和调试手机页面的时候,避免不了页面要跳转到微信浏览器打开,调试阶段,android版微信浏览器一直都默认缓存html静态资源,每次静态资源变化甚至新内容发布的时候在微信浏览器上都极有可能不能更新,很多时候要清理微信缓存才能看到效果,很是烦人。部分客户装了QQ浏览器,微信实际调用的是QQ浏览器,有时候甚至光清理微信缓存都无效,QQ浏览器的缓存也要清。

经过一番探索微信浏览器确实是在webview的上层做的缓存:就是如果请求过了这个地址,就会存在本地,之后不取线上了。

解决方案是在调试阶段或者频繁更新的页面加入以下头信息

<meta http-equiv="Cache-Control" content="no-cache, no-store, must-revalidate" />
<meta http-equiv="Pragma" content="no-cache" />
<meta http-equiv="Expires" content="0" />

 这样微信浏览器对这个页面将会一直上线拉取了。

PHP 相关文章推荐
PHP 工厂模式使用方法
May 18 PHP
PHP大小写问题:函数名和类名不区分,变量名区分
Jun 17 PHP
php快递单号查询接口使用示例
May 05 PHP
CentOS 安装 PHP5.5+Redis+XDebug+Nginx+MySQL全纪录
Mar 25 PHP
wampserver改变默认网站目录的办法
Aug 05 PHP
PHP的Yii框架的常用日志操作总结
Dec 08 PHP
php实现登录tplink WR882N获取IP和重启的方法
Jul 20 PHP
PHP简单预防sql注入的方法
Sep 27 PHP
php中的单引号、双引号和转义字符详解
Feb 16 PHP
ajax+php实现无刷新验证手机号的实例
Dec 22 PHP
laravel 如何实现引入自己的函数或类库
Oct 15 PHP
php操作redis数据库常见方法实例总结
Feb 20 PHP
php通过两层过滤获取留言内容的方法
Jul 11 #PHP
php基于openssl的rsa加密解密示例
Jul 11 #PHP
PHP微信开发用Cache 解决数据缓存
Jul 11 #PHP
php使用escapeshellarg时中文被过滤的解决方法
Jul 10 #PHP
[原创]smarty简单模板变量输出方法
Jul 09 #PHP
[原创]php简单防盗链验证实现方法
Jul 09 #PHP
[原创]php简单隔行变色功能实现代码
Jul 09 #PHP
You might like
深入解析php之sphinx
2013/05/15 PHP
php5.3 不支持 session_register() 此函数已启用的解决方法
2013/11/12 PHP
php压缩和解压缩字符串的方法
2015/03/14 PHP
PHP7之Mongodb API使用详解
2015/12/26 PHP
php $_SESSION会员登录实例分享
2021/01/19 PHP
浅谈PHP检查数组中是否存在某个值 in_array 函数
2016/06/13 PHP
浅谈php中fopen不能创建中文文件名文件的问题
2017/02/06 PHP
总结PHP代码规范、流程规范、git规范
2018/06/18 PHP
html中table数据排序的js代码
2011/08/09 Javascript
关闭浏览器时提示onbeforeunload事件
2013/12/25 Javascript
用Jquery实现滚动新闻
2014/02/12 Javascript
Javascript WebSocket使用实例介绍(简明入门教程)
2014/04/16 Javascript
vue检测对象和数组的变化分析
2018/06/30 Javascript
Vue 动态组件components和v-once指令的实现
2019/08/30 Javascript
解决vue初始化项目时,一直卡在Project description上的问题
2019/10/31 Javascript
关于vue 项目中浏览器跨域的配置问题
2020/11/10 Javascript
python提取字典key列表的方法
2015/07/11 Python
python中string模块各属性以及函数的用法介绍
2016/05/30 Python
tensorflow获取变量维度信息
2018/03/10 Python
如何实现删除numpy.array中的行或列
2018/05/08 Python
使用python打印十行杨辉三角过程详解
2019/07/10 Python
python Pandas库基础分析之时间序列的处理详解
2019/07/13 Python
python scrapy爬虫代码及填坑
2019/08/12 Python
详解python opencv、scikit-image和PIL图像处理库比较
2019/12/26 Python
Python实现猜年龄游戏代码实例
2020/03/25 Python
Pygame框架实现飞机大战
2020/08/07 Python
canvas实现手机的手势解锁的步骤详细
2020/03/16 HTML / CSS
Under Armour西班牙官网:美国知名的高端功能性运动品牌
2018/12/12 全球购物
意大利值得信赖的在线超级药房:PillolaStore
2020/02/05 全球购物
JAVA的事件委托机制和垃圾回收机制
2014/09/07 面试题
美术专业学生个人自我评价
2013/09/19 职场文书
作风建设演讲稿
2014/05/23 职场文书
小学领导班子对照材料
2014/08/23 职场文书
傲慢与偏见电影观后感
2015/06/10 职场文书
Python中常见的导入方式总结
2021/05/06 Python
关于PostgreSQL JSONB的匹配和交集问题
2021/09/14 PostgreSQL