微信H5、网页、内置浏览器 清理缓存,微信浏览器缓存

微信H5、网页、内置浏览器 清理缓存,微信浏览器缓存写在前面 网页浏览器为什么要有缓存浏览器缓存 baiBrowserCa 我们都知道 在浏览器中打开一个网址时会经过 URL 解析 gt DNS 查询 gt TCP 连接 gt 处理请求 gt 接受响应 gt 渲染页面等一系步骤后 并且在不出任何 如 网速太慢 突然断网 服务器出错 代码出错等 意外的情况下 页面内容才能正常的展现在我们眼前 而且在网页中所加载各种资源 都要建立 HTTP 连接 客户端 浏览器 和服务器要经过三次握手 四次挥手 再经过 DO

写在前面:

网页浏览器为什么要有缓存浏览器缓存(baiBrowser Caching)?

我们都知道,在浏览器中打开一个网址时会经过:URL 解析 -> DNS 查询 -> TCP 连接 -> 处理请求 -> 接受响应 -> 渲染页面等一系步骤后,并且在不出任何(如,网速太慢,突然断网,服务器出错,代码出错等)意外的情况下,页面内容才能正常的展现在我们眼前。

而且在网页中所加载各种资源,都要建立HTTP连接,客户端(浏览器) 和 服务器要经过三次握手,四次挥手,再经过DOM树渲染等过程,其实挺不容易的(尤其是在以前的网络环境和软硬件技术都还不太好的时候,不过现在各方面都好多了!),所以为了可以提高页面的呈现速度,就有了这个浏览器缓存。

浏览器缓存带来的好处:

我们在第一次浏览网页时,默认情况下浏览器会自动缓存所加载的系列资源,当我们再次打开访问之前的这个网页时,会先查看缓存是否有本次请需要请求的资源,如果有就直接从缓存读取(如果没有就请求服务器),这样就便于我们在访问页面时:减少请求时间、节省网络流量,提高响应速度,我们带来更好的用户体验。

浏览器缓存带来的弊端:

缓存作为用户来讲确实有利,但是做为开发者来说,尤其是作前端开发的都知道,每当项目有新需求、版本更新迭代后,如果之前用户已经有的缓存时,所看到的页面还是之前浏览过的缓存效果,看不到更新后的效果,这种情况 尤其是在微信内置的浏览器中,更为严重(之前着急的时候,还让客服暂时教用户清除微信缓存来解决这个问题)。

 

如何清除微信浏览器的缓存:

由于微信浏览器在移动端 Android环境 和 IOS环境 中浏览器内核不一样;所以不同版本的微信 和 不同的系统 之间清理缓存的方式也就略有不同。

 

在IOS环境下手动清除微信缓存:

大至有以下几种清除方式(Android环境也适用)

  1. 先退出当前微信账号登陆,然后重新登录微信;
  2. 如果是微信公众号企业号等 先取关注,然后再重新关注。
  3.  进入页面后,右上角的 “…” 按扭,在屏幕下面弹出的选项中点击 “刷新“。
  4. 在微信底部导航菜单点击”我” ->  设置 -> 通用 -> 存储 -> 清理缓存清理

微信H5、网页、内置浏览器 清理缓存,微信浏览器缓存

 

在Android环境下手动清除微信缓存:

在微信中打开 腾讯浏览器开发者服务提供的 X5内核调试专用页 网址:https://debugx5..com,在微信浏览器中打开后,勾选要清除的选项,点击清除按扭即可!如下图所示:

微信H5、网页、内置浏览器 清理缓存,微信浏览器缓存

 

注: 有的手机打开debugx5..com可能会提示,”你使用的内核非X5内核,请前往。。。!”

微信H5、网页、内置浏览器 清理缓存,微信浏览器缓存

出现以上情况后,请先微信浏览器中打开 http://debugmm..com/?forcex5=true 这个网址 后,再打开 debugx5..com !就能打开啦!

微信H5、网页、内置浏览器 清理缓存,微信浏览器缓存

 

除了上面的清除缓存方法以外,在Android环境中还有一种可以达到清除缓存的效果,就是在Android手机的设置 -> 应用 -> 应用管理,找到微信,然后在应用管理里中去清除微信APP的缓存,如下图所示!

微信H5、网页、内置浏览器 清理缓存,微信浏览器缓存

 

 

清除微信浏览器缓存的其他解决方案:

1、在HTML页面的head中设置meta标签 为不缓存(但是这个种方法在微信浏览器中无效)

 
   
    
     
     
    
  

 

2、重命名相关静态资源:

最后关于缓存问题,个人觉得还是要从开发上入手,因为不是所以的用户都会 或者 都愿意去清除缓存的,所以只有从最初的起点去规避这个问题。

重命资源主要是为了在加载网页相关资源时,不去读缓存,而是从服务器中去重新获取。只要重新给资源命合后,就会被当作新资源加载,就不会存在缓存问题啦!

但是如果在文件资源比较多的情况下,不可能一个个去手动改吧,这样也太麻烦了,所以我们一般都借助一些构建工具如Webpack、Gulp、FIS、Grunt等 给文件资源进行重命名,或 用在现流行的前端框架如:Vue、React、Angurl等,它们都带有资源命名功能的!

打包生成后的文件资源如下图所示,每次打包生成后的文件资源,都会重新命名的,上线后就会当作新资源加载,所以就不会存在缓存的问题,并且只要开发以后不更新迭代版本(如果要更新迭代也不会影响,大不了用户在第一次加载时,重新请求一下文件资源,这点流量对用户来说跟本不是问题),用户在更新迭代后的第一次也会自动缓存的,这样一来用户体验 和 更新迭代 就互不影响啦!

如:xxx.html、xxx.jpg、xxx.css、xxx.js等;

微信H5、网页、内置浏览器 清理缓存,微信浏览器缓存

 

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/214516.html原文链接:https://javaforall.net

(0)
上一篇 2026年3月18日 下午4:04
下一篇 2026年3月18日 下午4:05


相关推荐

  • java 笛卡尔积_使用Guava来计算笛卡尔积

    java 笛卡尔积_使用Guava来计算笛卡尔积以前做项目的时候计算笛卡尔积的时候,总是使用各种for循环来嵌套,最后往往在Sonar代码检查的时候总是会报警说for循环嵌套过深。今天才知道Guava原来已经为我们提供了优雅的计算笛卡尔积的方法。比如我们要计算3个List的笛卡尔积,每个list的内容都是[‘a’,’b’,’c’],请看下面的代码:publicclassCartesianProductUtil{publicstat…

    2022年7月27日
    5
  • 【读书】领导力的5个层次-生产

    【读书】领导力的5个层次-生产领导力的 5 个层次 生产 能否化梦想为现实是区别真正领导者与自封领导的试金石一 前言生产力能够鉴别并区分哪些领导者能够对组织产生重大深远的影响而哪些毫无建树 不仅他们个人本身高产 更能帮忙团队生产 这种能力赋予第三层次领导者以自信心 公信以及增长的影响力 生产层次是领导力真

    2026年3月17日
    2
  • 数据库中的主键与外键的关系,通俗易懂

    数据库中的主键与外键的关系,通俗易懂一 什么是主键 外键 关系型数据库中的一条记录中有若干个属性 若其中某一个属性组 注意是组 能唯一标识一条记录 该属性组就可以成为一个主键比如学生表 学号 姓名 性别 班级 其中每个学生的学号是唯一的 学号就是一个主键课程表 课程编号 课程名 学分 其中课程编号是唯一的 课程编号就是一个主键成绩表 学号 课程号 成绩 成绩表中单一一个属性无法唯一标识一条记录 学号和课程号的组合

    2026年3月19日
    2
  • char与byte的区别

    char与byte的区别很多初学者 包括我 已经学了一年多 java 了 肯会对 char 和 byte 这两种数据类型有所疑惑 相互混淆 今天特地查了好多资料 对 byte 和 char 两种数据类型进行了总结和比较 先将结果与大家分享 nbsp nbsp nbsp nbsp byte nbsp 是字节数据类型 nbsp 是有符号型的 占 1 nbsp 个字节 大小范围为 128 127 char nbsp 是字符数据类型 nbsp 是无符号型的 占 2 字节 Unicode 码 nbsp 大小范围 nbsp 是 0 65

    2025年7月5日
    5
  • JAVA面试题库_jpa面试题

    JAVA面试题库_jpa面试题Shiro可以做哪些工作?Shiro可以帮助我们完成:认证、授权、加密、会话管理、与Web集成、缓存等shiro有哪些组件?Authentication:身份认证/登录,验证用户是不是拥有相应的身份;Authorization:授权,即权限验证,验证某个已认证的用户是否拥有某个权限;即判断用户是否能做事情,常见的如:验证某个用户是否拥有某个角色。或者细粒度的验证某个用户对某个资源是否具有某个权限;SessionManager:会话管理,即用户登录后就是一次会话,在没有退出之前,它的所有信息都在会

    2022年10月14日
    6
  • 课后作业2

    课后作业2

    2021年6月13日
    95

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号