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

yipeiwu_com6年前PHP代码库

      微信开发比较头疼的一个情况就是缓存难以清除,然而奇怪的是微信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实现HTTP断点续传的方法

本文实例讲述了PHP实现HTTP断点续传的方法。分享给大家供大家参考。具体实现方法如下: <?php /** * PHP-HTTP断点续传实现 * @param s...

PHP基于单例模式实现的数据库操作基类

本文实例讲述了PHP基于单例模式实现的数据库操作基类。分享给大家供大家参考,具体如下: 配置文件: <?php $db = array( 'host'=>...

php实现QQ空间获取当前用户的用户名并生成图片

本文实例讲述了php实现QQ空间获取当前用户的用户名并生成图片的方法。分享给大家供大家参考。具体如下: 最近发现空间里经常会转载一些含有当前用户昵称和qq号的图片,很好奇,研究了一下原理...

PHP实现简单ajax Loading加载功能示例

本文实例讲述了PHP实现简单ajax Loading加载功能。分享给大家供大家参考,具体如下: var xmlHttp; function createXmlHttpReq() {...

解析如何修改phpmyadmin中的默认登陆超时时间

登录后1440秒未活动后总是自动退出,一天还要登录多次,终于有时间来解决这个问题了,感觉是session超时,结果在网上search了下,找到解决办法啦,哈哈哈,在此做个笔记:phpmy...