微信内置浏览器H5如何清除缓存以及cookie和localStorage何时清除

UPDATE: 2021-01-20 20:01

背景

我们在开发微信 H5页面的时候经常会遇到资源文件(图片、css、js 等)不更新的问题,其实解决方案很简单,只要在请求地址之后加一个随机数参数即可:

<img src="./img/image-url-test.jpg?v20180318214000">

本文想探究的是除了主动在资源文件上加参数以外,通过微信 App 自身,有哪些用户可操作的动作会清空缓存,以及微信内置浏览器的 cookie 和 localStorage 会在何时清除。

本实验硬件及软件版本
  • iPHone Xs, iOS 14.2
  • oppo R11st, Android 9, ColorOs V6.0.1
  • 魅族 16th, Android 8.1.0, Flyme 8.1.5.0A
  • 微信软件版本
    • iOS 7.0.21
    • Android 7.0.22

你可以使用以下文件来测试cookie:
https://feizhaojun.com/demo/cookie

你可以使用以下文件来测试localStorage:
https://feizhaojun.com/demo/localstorage.html

试验

我们整理了一下微信的相关操作:

1 刷新
右上角菜单-刷新
  • iOS 如果连续操作两次点开右上角菜单刷新,会更新浏览器资源文件
  • 安卓如何刷新都不会更新浏览器资源文件
2 微信清理缓存
1. iOS:我→设置→通用→存储空间→缓存→清理
2. 安卓:我→设置→通用→微信存储空间
3. 安卓:我→设置→通用→微信存储空间→缓存→清理
  • iOS清理缓存不会清理webview的浏览器缓存
  • iOS清理缓存会清空cookie (2021-01-20)
  • iOS清理缓存不会清空localStorage (2021-01-20)
  • 安卓点击“微信存储空间”之后,就会清空cookie (2021-01-20)
  • 安卓点击“微信存储空间”之后,就会清空localStorage (2021-01-20)
  • 安卓点击“微信存储空间”之后,会清除缓存
3 删除聊天记录
1. iOS:设置-清空聊天记录
2. 安卓:设置-聊天-清空聊天记录
  • 不管是安卓还是 iOS,清空聊天记录并不能清除webview的浏览器缓存、cookie、和 localStorage
4 注销登录
1. iOS:我→设置→退出登录
2. 安卓:我→设置→退出
  • iOS重新登录会清空cookie (2021-01-20)
  • iOS重新登录会清空localStorage (2021-01-20)
  • 安卓重新登录会清空cookie (2021-01-20)
  • 安卓重新登录会清空localStorage (2021-01-20)
  • 不管是安卓还是 iOS,注销之后重登陆,都会清除webview的浏览器缓存、cookie、和 localStorage
5 删除重装(没有试过)
  • 没有尝试。

总结

清除缓存

  • iOS
    • 点击右上角菜单刷新,连续操作两次
  • 安卓
    • 找到:我→设置→通用→微信存储空间,点进去即可

清空cookie

  • iOS
    • 找到:我→设置→通用→存储空间→缓存→清理
    • 重新登录:我→设置→退出登录
  • 安卓
    • 找到:我→设置→通用→微信存储空间,点进去即可
    • 重新登录:我→设置→退出登录

清空localStorage

  • iOS
    • 重新登录:我→设置→退出登录
  • 安卓
    • 找到:我→设置→通用→微信存储空间,点进去即可
    • 重新登录:我→设置→退出登录

您的赞助将会支持作者创作及本站运维

评论

共12条
  1. name 2020-07-13 11:58

    支付宝搜了,没有啊,2020年了,请问她找到对象了没有???

  2. wil 2020-08-23 18:20

    啊这 都2年了 微信浏览器还是不好清理localstorage啊

  3. ccc 2020-11-09 10:38

    小姐姐找到对象了吗

  4. mukti 2020-11-09 14:32

    害妹有 哈哈哈

  5. Json 2021-01-11 15:43

    妹子找到男友了吗,本人25年单身

  6. mukti 2021-01-13 16:08

    哈哈哈

  7. kazaff 2021-02-22 11:47

    你好,请教一下,我按照文章提供的方式,退出重新登录微信,ios下,localstorage依然存在。。

  8. mukti 2021-02-24 17:51

    按照社区里面的说法,重新登录应该是清理localStorage的,我会再跟踪一下此问题,感谢反馈~

  9. zenker 2021-04-27 11:23

    兄弟我感觉你这篇文章,从问题答案到征婚信息都不对啊哈哈

  10. mukti 2021-04-30 12:19

    哈哈哈哈哈哈哈

  11. mengmianxiaoxia 2021-06-10 09:01

    楼主,妹子找到对象了吗?
    能不能给我介绍一下啊,e留言。

  12. mukti 2021-06-10 20:11

    哈哈哈哈哈

发表评论


TOP