- 微信浏览器使用的是QQ浏览器X5内核,而非系统内核
- 微信不是开源软件,具体的缓存逻辑不清楚,而且各个版本不同,只能猜测
- 所以导致了各种技术解决方案都没有一劳永逸解决问题的(说不定哪天又变了呢)
- 疑似微信在webview的上层自行实现了一套缓存逻辑,不懂anroid/ios不知道详细逻辑
- 微信并不是网上所说只缓存部分文件,而是html,css,js,图片文件都有可能被缓存
- 可以将应用版本号展示在页面上,方便用户报障时定位是否为缓存问题
可能有用(指针对某些版本的微信起作用)的解决方案:
- 添加manifest
<html manifest="NOTEXIST.manifest">
根据HTML5 W3C规范,解析器下载manifest header 404/410时,缓存即失效( 参见 "5.7.4 Downloading or updating an application cache > 5.If fetching the manifest fails due to a 404 or 410")
- head中添加
<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" />
- 请求时添加随机参数,如时间戳等
作为用户
- 使用微信提供的刷新功能
- 取消关注公众号,然后重新关注
- 退出微信(指注销账号)重新登录
网友评论