h5嵌入app解决方案(app内嵌H5 webview 本地缓存问题的解决)
类别:Web前端 浏览量:1650
时间:2021-10-25 10:27:56 h5嵌入app解决方案
app内嵌H5 webview 本地缓存问题的解决前文
APP内嵌H5已经很普遍了,但是每个app提供的webview表现都不太一样,在开发中遇到了一个非常棘手的缓存问题。APP启动时加载了我们商城项目的H5代码,然后把index.html文件缓存到了本地。
记录一下
问题表现
H5项目打包上线后,由于静态资源js和css文件名后面都带了哈希值,这是webpack打包带上的,也是为了=防止缓存。但是在app启动后由于缓存了html请求的还是上个版本包的静态资源,导致index.a878n.js找不到404,页面吧白屏了。-----我们H5项目打包上线后,服务器上上个版本的代码就清掉了。
解决办法
我们一开始给html加上了一段随机数,就是app加载到html时,在url后面加随机数,但是发现webview的html缓存,导致我们的js修改是更新不上的。
最后解决方案是,app端加载项目时在域名后加时间戳并升级app才可。
为了避免这种问题出现,那就是项目首次上线时就要在html内给url加上随机数,让webview不缓存html到本地。
前端大佬给推荐的是一开始就要配置nginx ,强制不缓存html
location / { expires -1; add_header 'Cache-Control' 'no-store, no-cache, must-revalidate, proxy-revalidate, max-age=0'; try_files $uri $uri/ @router; index index.html; }
到此这篇关于app内嵌H5 webview 本地缓存问题的解决的文章就介绍到这了,更多相关app内嵌Html5 webview 本地缓存内容请搜索开心学习网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持开心学习网!
热门推荐
- docker的解剖(再见 Docker如何5分钟转型 containerd)
- 使用mui制作页面案例(Yii框架页面渲染操作实例详解)
- svn代码冲突的解决
- python零基础入门五小时(从0开始的Python学习016异常)
- 虚拟主机干嘛用的(虚拟主机购买后怎么操作?)
- 云服务器cvm什么意思(什么是云服务器cvm?怎么与普通物理服务器进行)
- thinkphp中view视图的作用(Thinkphp5.0框架视图view的模板布局用法分析)
- idea的mysql如何连接(在IntelliJ IDEA中使用Java连接MySQL数据库的方法详解)
- 所有聚合函数mysql教程(Mysql 聚合函数嵌套使用操作)
- jquery中prop和attr的区别