在移动客户端缓存网络资源的方法及系统、服务器及介质技术方案

技术编号:23771878 阅读:24 留言:0更新日期:2020-04-12 00:31
本发明专利技术公开了一种在移动客户端缓存网络资源的方法及系统、服务器及介质,其在客户端的网络资源访问指令被触发时,获取网络资源的网络地址并发送给缓存工具对象;根据网络资源的网络地址在缓存目录中进行轮询,查找是否存在该网络地址对应的本地缓存资源;在缓存目录中不存在对应的本地缓存资源情况下,缓存工具尝试自网络服务器中下载该网络地址对应的网络资源,并存储到客户端的存储介质中;在网络资源下载失败或者网络资源被篡改情况下,通过安全通信传输通道重新下载该网络资源,从而提升用户体验以及节约网络带宽和网络流量成本。

Method, system, server and media of caching network resources in mobile client

【技术实现步骤摘要】
在移动客户端缓存网络资源的方法及系统、服务器及介质
本专利技术涉及网络资源存储
,尤其涉及一种在移动客户端缓存网络资源的方法及系统、服务器及介质。
技术介绍
在移动客户端应用程序中,常常需要使用网络中的文件(如图片、音频等),这就需要将网络服务器中的文件下载到客户端设备的存储介质中,如此,当客户端应用程序后续还需要使用该网络资源时,可以直接从客户端设备的存储介质中获取该文件,而不需要浪费网络带宽和网络流量再次从网络服务器下载该文件。目前,在客户端应用程序开发过程中,大都用到了该缓存技术,但是该技术存在一个缺陷,即在下载网络资源时,可能由于运营商劫持、下载链路被重置等原因,导致下载失败,这样就无法缓存该文件,且在后续再访问该网络资源时,可能会因为同样的原因下载失败,给用户带来很不好的使用体验。
技术实现思路
有鉴于此,本专利技术实施例提供了一种在移动客户端设备上的应用程序中,通过下载网络资源到客户端设备存储介质中,以便应用程序后续直接从移动客户端直接访问该文件的方法。本专利技术实施例的第一方面,提供了一种在移动客户端缓存网络资源的方法,所述在移动客户端缓存网络资源的方法包括如下步骤:在客户端的网络资源访问指令被触发时,获取网络资源的网络地址并发送给缓存工具对象;根据网络资源的网络地址在缓存目录中进行轮询,查找是否存在该网络地址对应的本地缓存资源;在缓存目录中不存在对应的本地缓存资源情况下,缓存工具尝试自网络服务器中下载该网络地址对应的网络资源,并存储到客户端的存储介质中;在网络资源下载失败或者网络资源被篡改情况下,通过安全通信传输通道重新下载该网络资源。本专利技术实施例的第二方面,提供了一种在移动客户端缓存网络资源的系统,所述在移动客户端缓存网络资源的系统包括如下功能模块:指令触发模块,配置为在客户端的网络资源访问指令被触发时,获取网络资源的网络地址并发送给缓存工具对象;资源查找模块,配置为根据网络资源的网络地址在缓存目录中进行轮询,查找是否存在该网络地址对应的本地缓存资源;初级下载模块,配置为在缓存目录中不存在对应的本地缓存资源情况下,缓存工具尝试自网络服务器中下载该网络地址对应的网络资源,并存储到客户端的存储介质中;重置下载模块,配置为在网络资源下载失败或者网络资源被篡改情况下,通过安全通信传输通道重新下载该网络资源。本专利技术实施例的第三方面,提供了一种服务器,包括存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现如上所述在移动客户端缓存网络资源的方法的步骤。本专利技术实施例的第四方面,提供了一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序被处理器执行时实现如上所述在移动客户端缓存网络资源的方法的步骤。本专利技术提供的在移动客户端缓存网络资源的方法及系统、服务器及介质,其创建了一种专门处理网络资源缓存工作的缓存工具,能够在缓存失败后判断失败原因,再避开失败原因去重新缓存网络资源,且提供了一种根据网络资源URL获取本地缓存的算法,确保信息的完整一致性和唯一性,提升用户体验以及节约网络带宽和网络流量成本。附图说明为了更清楚地说明本专利技术实施例中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本专利技术的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。图1为本专利技术实施例提供的在移动客户端缓存网络资源的方法的流程框图;图2为本专利技术实施例提供的在安卓客户端中缓存网络音频资源方法的步骤流程图;图3为本专利技术实施例提供的在安卓客户端中的语音聊天界面视图;图4为本专利技术实施例提供的在移动客户端缓存网络资源的系统的功能模块框图;图5为本专利技术实施例提供的服务器的结构示意图。具体实施方式为使得本专利技术的专利技术目的、特征、优点能够更加的明显和易懂,下面将结合本专利技术实施例中的附图,对本专利技术实施例中的技术方案进行清楚、完整地描述,显然,下面所描述的实施例仅仅是本专利技术一部分实施例,而非全部的实施例。基于本专利技术中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其它实施例,都属于本专利技术保护的范围。如图1所示,本专利技术实施例提供的一种在移动客户端缓存网络资源的方法,所述在移动客户端缓存网络资源的方法包括如下步骤:S1、在客户端的网络资源访问指令被触发时,获取网络资源的网络地址并发送给缓存工具对象;S2、根据网络资源的网络地址在缓存目录中进行轮询,查找是否存在该网络地址对应的本地缓存资源;S3、在缓存目录中不存在对应的本地缓存资源情况下,缓存工具尝试自网络服务器中下载该网络地址对应的网络资源,并存储到客户端的存储介质中;S4、在网络资源下载失败或者网络资源被篡改情况下,通过安全通信传输通道重新下载该网络资源。以安卓客户端移动社交应用中播放网络音频资源为例。具体如图2所示,首先需在客户端设置缓存目录path,后续所有网络资源都将会下载到缓存目录path下。当用户选择需要播放的网络音频资源,如在附图3中即点击某一个音频条控件。将网络资源的URL和网络资源的fileMd5值传给本专利技术工具(后文中FileCacheUtil则代表本专利技术工具),FileCacheUtil对传进来的URL变量字符串做md5运算,得到一个md5值,将该值赋值给fileName变量,在path目录中查找是否存在资源名为fileName的资源,若存在该资源,则调用系统的多媒体播放器播放该语音资源,整个流程结束。若缓存目录中不存在对应的本地缓存资源,则客户端向网络服务器发出网络下载请求,网络服务器向客户端返回请求应答对象,根据请求应答对象中的状态码判断是否进行缓存。即在安卓端发起一个http或者https请求,若应用程序无异常抛出,那么服务器会返回一个Response对象,该对象包含状态码、资源数据等信息。可以先判断状态码是否为成功状态,即状态码为200,若状态码为成功状态,则读取资源信息并缓存资源,并且在读取过程中应用程序没有抛出任何异常则认为下载成功,其他情况则认为是下载失败。鉴于http协议有简单快速、灵活,部署成本和流量成本低廉的特点,故网络资源大都支持以http协议去获取文件的方式,本专利技术会先尝试通过http协议获取网络资源。只有在获取失败的情况下才会以https协议去获取网络资源。这样,在保证用户良好体验的基础上,也给应用程序开发商节约了网络带宽成本和网络流量成本。当网络资源下载成功时,对成功下载的网络资源进行密码散列函数计算,得到网络资源的信息摘要密码;将求得的信息摘要密码与客户端中存储的网络资源原始信息摘要密码进行比较,根据比较结果判断网络资源是否被篡改;在判断网络资源未被篡改的情况下,调用客户端系统的相应媒介工具访问网络资源;在判断网络资本文档来自技高网...

【技术保护点】
1.一种在移动客户端缓存网络资源的方法,其特征在于,所述在移动客户端缓存网络资源的方法包括如下步骤:/n在客户端的网络资源访问指令被触发时,获取网络资源的网络地址并发送给缓存工具对象;/n根据网络资源的网络地址在缓存目录中进行轮询,查找是否存在该网络地址对应的本地缓存资源;/n在缓存目录中不存在对应的本地缓存资源情况下,缓存工具尝试自网络服务器中下载该网络地址对应的网络资源,并存储到客户端的存储介质中;/n在网络资源下载失败或者网络资源被篡改情况下,通过安全通信传输通道重新下载该网络资源。/n

【技术特征摘要】
1.一种在移动客户端缓存网络资源的方法,其特征在于,所述在移动客户端缓存网络资源的方法包括如下步骤:
在客户端的网络资源访问指令被触发时,获取网络资源的网络地址并发送给缓存工具对象;
根据网络资源的网络地址在缓存目录中进行轮询,查找是否存在该网络地址对应的本地缓存资源;
在缓存目录中不存在对应的本地缓存资源情况下,缓存工具尝试自网络服务器中下载该网络地址对应的网络资源,并存储到客户端的存储介质中;
在网络资源下载失败或者网络资源被篡改情况下,通过安全通信传输通道重新下载该网络资源。


2.根据权利要求1所述在移动客户端缓存网络资源的方法,其特征在于,所述缓存工具尝试自网络服务器中下载该网络地址对应的网络资源,具体包括如下步骤:
客户端向网络服务器发出网络下载请求;
网络服务器向客户端返回请求应答对象;
根据请求应答对象中的状态码判断是否进行缓存,若状态码为成功状态,则读取资源信息并缓存资源,并且在整个下载过程中应用程序没有抛出任何异常对象则判断下载成功。


3.根据权利要求1所述在移动客户端缓存网络资源的方法,其特征在于,在缓存工具自网络服务器中成功下载该网络地址对应的网络资源后,通过一种映射算法存储到客户端的存储介质中,具体步骤如下:
对成功下载的网络资源进行密码散列函数计算,得到网络资源的信息摘要密码;
将求得的信息摘要密码与客户端中存储的网络资源原始信息摘要密码进行比较,根据比较结果判断网络资源是否被篡改;
在判断网络资源未被篡改的情况下,调用客户端系统的相应媒介工具访问网络资源;
在判断网络资源被篡改的情况下,删除下载的网络资源,再通过安全通信传输通道重新下载该网络资源。


4.根据权利要求3所述在移动客户端缓存网络资源的方法,其特征在于,所述密码散列函数计算为md5运算。<...

【专利技术属性】
技术研发人员:汪家明
申请(专利权)人:武汉华中时讯科技有限责任公司
类型:发明
国别省市:湖北;42

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1