[发明专利]一种移动应用高速缓存HTML5页面资源的方法在审
申请号: | 201610654644.1 | 申请日: | 2016-08-11 |
公开(公告)号: | CN107729331A | 公开(公告)日: | 2018-02-23 |
发明(设计)人: | 杨帅;张华康;史亭 | 申请(专利权)人: | 凡学(上海)教育科技有限公司 |
主分类号: | G06F17/30 | 分类号: | G06F17/30 |
代理公司: | 上海科盛知识产权代理有限公司31225 | 代理人: | 赵志远 |
地址: | 201620 上海市松*** | 国省代码: | 上海;31 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 移动 应用 高速缓存 html5 页面 资源 方法 | ||
技术领域
本发明涉及软件技术领域,尤其是涉及一种移动应用高速缓存HTML5页面资源的方法。
背景技术
2015年之前原生应用占据了90%的市场份额,但是随着HTML5(简称H5)的定稿,Hybird App(混合模式移动应用)也成为了一种趋势,如今市场上绝大部分的应用都会用到或多或少的H5页面,原因很简单,H5面的迭代不需要审核,但是H5页面也有其缺点,就是页面加载不能达到原生的效果。
H5现有技术:如今H5页面已经有自己的一套缓存机制。H5页面资源会缓存在CDN(Content Delivery Network,内容分发网络)的节点上,但是有些情况下当用户更新H5页面时发现页面并没有刷新到最新的H5资源,然后在多次刷新CDN节点之后才可以,而且当用户做限时秒杀的时候也需要H5页面及时刷新,显然这样是不合符用户的心理预期的。
App现有技术:原生App的缓存如今来说已经相对成熟,但是也存在有其明显缺点:其一,对H5的缓存机制基本没有,完全依赖于浏览器对于H5的缓存机制;其二,缓存的代码固化,不支持动态缓存。
所以,在此前景下有必要研发一种关于移动应用高速缓存H5页面资源的方法。
发明内容
本发明的目的就是为了克服上述现有技术存在的缺陷而提供一种移动应用高速缓存HTML5页面资源的方法,具有能够在App中实现H5页面的及时刷新,能够动态控制需要缓存的H5资源的优点。
本发明的目的可以通过以下技术方案来实现:
一种移动应用高速缓存HTML5页面资源的方法包括以下步骤:
1)设置移动应用向后台服务器请求的缓存资源名单的数据模型,所述缓存资源名单包括:标志是否开启缓存总开关的第一标志、标志是否开启白名单的第二标志、服务器版本信息、需要删除的本地文件目录、需要缓存的白名单、需要缓存的域名目录、需要缓存的指定的url地址;
2)启动移动应用时,向后台服务器发出获取缓存资源名单的请求,并根据后台服务器的返回值更新本地的缓存资源名单以及加载相应的缓存资源;
3)移动应用缓存HTML5页面时,拦截移动应用向后台服务器发出的网络请求,并根据网络请求和本地的缓存资源名单获取网络请求结果信息。
所述步骤2)具体包括以下步骤:
201)启动移动应用时,向后台服务器发出获取缓存资源名单的请求;
202)判断获取缓存资源名单的请求是否成功,若是,则执行步骤204),若否,则执行步骤203);
203)以本地存储的缓存资源名单为准,执行步骤206);
204)判断是否需要更新本地的缓存资源名单,若是,则执行步骤205),若否执行步骤203);
205)根据后台服务器的发回值更新本地的缓存资源名单,并删除存储在本地的缓存资源名单中需要删除的本地文件目录的内容,执行步骤206);
206)根据本地的缓存资源名单将需要缓存的白名单、需要缓存的域名目录、需要缓存的指定的url地址对应的缓存资源分别加载到运行移动应用的设备内存中。
所述步骤3)具体包括以下步骤:
301)移动应用缓存HTML5页面时,拦截移动应用向后台服务器发出的网络请求;
302)判断缓存总开关是否开启,若是,执行步骤303),若否执行步骤308);
303)判断此次网络请求是否在缓存资源名单中,若是,执行步骤304),若否,执行步骤308);
304)判断本地是否缓存过此次网络请求,若是,执行步骤305),若否,执行步骤309);
305)判断此次网络请求对应的本地缓存资源是否过期,若是,执行步骤307),若否,执行步骤306);
306)将本地缓存资源返回给网络请求,执行步骤314);
307)删除本地缓存的网络请求,执行步骤309);
308)将拦截住的网络请求发出,并接收后台服务器返回的请求结果信息,执行步骤314);
309)将拦截住的网络请求发出,并判断网络请求是否成功,若是,执行步骤310),若否,执行步骤314);
310)判断网络请求成功后发回的版本信息与本地存储的版本信息是否相同,若是,则将本地缓存资源返回给网络请求,执行步骤314),若否,则执行步骤311);
311)将此次网络请求暂时保留住,并向后台服务器发送更新缓存资源名单的请求;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于凡学(上海)教育科技有限公司,未经凡学(上海)教育科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201610654644.1/2.html,转载请声明来源钻瓜专利网。