CN103475744A - 一种基于Web应用的资源下载方法、装置和系统 - Google Patents
一种基于Web应用的资源下载方法、装置和系统 Download PDFInfo
- Publication number
- CN103475744A CN103475744A CN2013104626611A CN201310462661A CN103475744A CN 103475744 A CN103475744 A CN 103475744A CN 2013104626611 A CN2013104626611 A CN 2013104626611A CN 201310462661 A CN201310462661 A CN 201310462661A CN 103475744 A CN103475744 A CN 103475744A
- Authority
- CN
- China
- Prior art keywords
- business function
- resource bag
- framework
- module
- resource
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Images
Landscapes
- Information Transfer Between Computers (AREA)
Abstract
本发明实施例公开了一种基于Web应用的资源下载方法、装置和系统,所述方法包括:接收任一框架请求,将框架请求发送至Web服务器,在Web服务器根据框架标识确定框架模块后,获取框架模块,框架模块包括公共资源包、业务功能界面容器和服务器通讯模块,公共资源包包括各个业务功能资源包的公共资源;接收任一业务功能请求,通过服务器通讯模块,将业务功能请求发送至Web服务器;在Web服务器根据业务功能标识确定业务功能资源包后,通过服务器通讯模块获取业务功能资源包,通过业务功能界面容器对业务功能资源包和公共资源包中的资源进行显示。本发明采用框架模式,优化Web应用中资源下载的过程,节省网络下载流量,同时能够提升用户的体验。
Description
技术领域
本发明涉及数据处理技术领域,具体涉及一种基于Web应用的资源下载方法、装置和系统。
背景技术
通常,Web应用一般为“客户端+Web服务器”模式,即客户端通过网络向Web服务器发送服务请求,Web服务器接收服务请求后向客户端返回应答。在实际应用某一项功能的过程中,客户端会不断地向Web服务器请求该项功能的中间页面或结果页面等,也就是说,客户端需要频繁地与Web服务器通过网络进行交互并下载用于页面显示的资源,由于网络带宽的限制,客户端在资源下载的过程中需要频繁等待Web服务器的应答,对使用客户端的用户的交互体验影响很大。
然而在很多情况下我们发现,客户端从Web服务器下载的页面中很多内容与邻近的页面是重复的,如图1所示,图1为相邻页面资源对比图,Page1与Page2为两个相邻的页面,Page2与Page1之间只有Part2不同,因此在下载Page2的时候Part1、Part3是重复下载的。现有技术中提供了一种基于Ajax技术的页面部分更新资源下载方法可以解决这个问题,该方法只需要下载资源Part2,而作为相同资源的Part1和Part3可以保持不变,因此,利用Ajax技术从减少重复的资源下载出发,能够降低客户端与Web服务器之间的数据流量,从而缩短Web服务器的响应时间。
但是,上述基于Ajax技术的页面部分更新资源下载方法需要大量的Javascript脚本程序,这无疑给开发人员增加了负担,同时,Ajax技术对于资源下载的优化效果只能影响当前页面,也就是说,如果图1中的Page2后面还有Page3的话,Page3的资源只能和Page2中的资源对比出相同资源,也就是说,即使Page1与Page3存在大量的相同资源,Page3还是不得不重复对资源进行下载,所以现有的技术不能达到跨页面资源下载优化的目的。事实上,现有的资源下载优化不够彻底。
发明内容
为了克服现有技术的上述缺点,同时进一步优化Web应用中的资源下载过程,以保证用户在资源下载过程中的体验,本发明提供了一种基于Web应用的资源下载方法、装置和系统。
本发明提供了一种基于Web应用的资源下载方法,所述方法包括:
接收任一框架请求,并将所述框架请求发送至所述Web服务器,所述框架请求包括框架标识;
在所述Web服务器根据所述框架标识确定所述框架模块后,获取所述框架模块,所述框架模块包括公共资源包、业务功能界面容器和服务器通讯模块,所述公共资源包包括各个业务功能资源包的公共资源;
接收任一业务功能请求,并通过所述服务器通讯模块,将所述业务功能请求发送至所述Web服务器,所述业务功能请求包括业务功能标识;
在所述Web服务器根据所述业务功能标识确定所述业务功能资源包后,通过所述服务器通讯模块获取所述业务功能资源包,并通过所述业务功能界面容器对所述业务功能资源包和所述公共资源包中的资源进行显示,所述业务功能资源包包括实现所述业务功能的除所述公共资源以外的资源。
优选地,所述框架模块还包括缓存管理器,所述方法还包括:
将所述业务功能资源包缓存至所述缓存管理器,所述缓存管理器包括业务功能标识与业务功能资源包的对应关系。
优选地,所述方法还包括:
接收所述业务功能请求,并判断所述缓存管理器中是否存在与所述业务功能请求中的业务功能标识对应的业务功能资源包,如果是,则获取所述缓存管理器中的所述业务功能资源包。
优选地,所述业务功能资源包还包括所述资源包版本信息,所述方法还包括:
通过所述服务器通讯模块,将所述业务功能资源包中的所述资源包版本信息发送至所述Web服务器;
当所述Web服务器根据所述资源包版本信息确定所述业务功能资源包不是最新版本时,通过所述服务器通讯模块重新获取所述业务功能标识对应的业务功能资源包。
优选地,所述框架模块还包括框架版本信息,所述方法还包括:
将所述框架模块缓存至任一存储空间,所述存储空间包括框架标识与框架模块的对应关系;
接收任一框架请求,并判断所述存储空间中是否存在与所述框架标识对应的框架模块,如果是,则将所述框架模块的框架版本信息发送至所述Web服务器;
当所述Web服务器根据所述框架版本信息确定所述框架模块不是最新版本时,重新获取所述框架标识对应的框架模块。
本发明还提供了一种基于Web应用的资源下载装置,所述装置包括:
第一接收模块,用于接收任一框架请求;
第一发送模块,用于将所述框架请求发送至所述Web服务器,所述框架请求包括框架标识;
第一获取模块,用于在所述Web服务器根据所述框架标识确定所述框架模块后,获取所述框架模块,所述框架模块包括公共资源包、业务功能界面容器和服务器通讯模块,所述公共资源包包括各个业务功能资源包的公共资源;
第二接收模块,用于接收任一业务功能请求;
第二发送模块,用于通过所述服务器通讯模块,将所述业务功能请求发送至所述Web服务器,所述业务功能请求包括业务功能标识;
第二获取模块,用于在所述Web服务器根据所述业务功能标识确定所述业务功能资源包后,通过所述服务器通讯模块获取所述业务功能资源包;
显示模块,用于通过所述业务功能界面容器对所述业务功能资源包和所述公共资源包中的资源进行显示,所述业务功能资源包包括实现所述业务功能的除所述公共资源以外的资源。
优选地,所述框架模块还包括缓存管理器,所述装置还包括:
第一缓存模块,用于将所述业务功能资源包缓存至所述缓存管理器,所述缓存管理器包括业务功能标识与业务功能资源包的对应关系。
优选地,所述装置还包括:
第三接收模块,用于接收所述业务功能请求;
第一判断模块,用于判断所述缓存管理器中是否存在与所述业务功能请求中的业务功能标识对应的业务功能资源包;
第三获取模块,用于在所述判断模块的结果为是时,获取所述缓存管理器中的所述业务功能资源包。
优选地,所述业务功能资源包还包括所述资源包版本信息,所述装置还包括:
第三发送模块,用于通过所述服务器通讯模块,将所述业务功能资源包中的所述资源包版本信息发送至所述Web服务器;
第四获取模块,用于当所述Web服务器根据所述资源包版本信息确定所述业务功能资源包不是最新版本时,通过所述服务器通讯模块重新获取所述业务功能标识对应的业务功能资源包。
优选地,所述框架模块还包括框架版本信息,所述装置还包括:
第二缓存模块,用于将所述框架模块缓存至任一存储空间,所述存储空间包括框架标识与框架模块的对应关系;
第四接收模块,用于接收任一框架请求;
第二判断模块,用于判断所述存储空间中是否存在与所述框架标识对应的框架模块;
第四发送模块,用于在所述第二判断模块的结果为是时,将所述框架模块的框架版本信息发送至所述Web服务器;
第五获取模块,用于当所述Web服务器根据所述框架版本信息确定所述框架模块不是最新版本时,重新获取所述框架标识对应的框架模块。
本发明还提供了一种基于Web应用的资源下载系统,所述系统包括客户端和Web服务器;所述客户端,用于接收任一框架请求,并将所述框架请求发送至所述Web服务器,所述框架请求包括框架标识;
所述Web服务器,用于根据所述框架标识确定所述框架模块;
所述客户端,用于获取所述框架模块,所述框架模块包括公共资源包、业务功能界面容器和服务器通讯模块,所述公共资源包包括各个业务功能资源包的公共资源;
所述客户端,用于接收任一业务功能请求,并通过所述服务器通讯模块,将所述业务功能请求发送至所述Web服务器,所述业务功能请求包括业务功能标识;
所述Web服务器,用于根据所述业务功能标识确定所述业务功能资源包;
所述客户端,用于通过所述服务器通讯模块获取所述业务功能资源包,并通过所述业务功能界面容器对所述业务功能资源包和所述公共资源包中的资源进行显示,所述业务功能资源包包括实现所述业务功能的除所述公共资源以外的资源。
优选地,所述框架模块还包括缓存管理器;
所述客户端,还用于将所述业务功能资源包缓存至所述缓存管理器,所述缓存管理器包括业务功能标识与业务功能资源包的对应关系。
优选地,所述客户端,还用于接收所述业务功能请求,并判断所述缓存管理器中是否存在与所述业务功能请求中的业务功能标识对应的业务功能资源包,如果是,则获取所述缓存管理器中的所述业务功能资源包。
优选地,所述业务功能资源包还包括所述资源包版本信息;
所述客户端,还用于通过所述服务器通讯模块,将所述业务功能资源包中的所述资源包版本信息发送至所述Web服务器;
所述Web服务器,用于根据所述资源包版本信息确定所述业务功能资源包是否为最新版本;
所述客户端,还用于当所述Web服务器根据所述资源包版本信息确定所述业务功能资源包不是最新版本时,通过所述服务器通讯模块重新获取所述业务功能标识对应的业务功能资源包。
优选地,所述框架模块还包括框架版本信息;
所述客户端,还用于将所述框架模块缓存至任一存储空间,所述存储空间包括框架标识与框架模块的对应关系;
所述客户端,还用于接收任一框架请求,并判断所述存储空间中是否存在与所述框架标识对应的框架模块,如果是,则将所述框架模块的框架版本信息发送至所述Web服务器;
所述Web服务器,用于根据所述框架版本信息确定所述框架模块是否为最新版本;
所述客户端,还用于当所述Web服务器根据所述框架版本信息确定所述框架模块不是最新版本时,重新获取所述框架标识对应的框架模块。
本发明首先接收任一框架请求,并将所述框架请求发送至所述Web服务器,所述框架请求包括框架标识;在所述Web服务器根据所述框架标识确定所述框架模块后,获取所述框架模块,所述框架模块包括公共资源包、业务功能界面容器和服务器通讯模块,所述公共资源包包括各个业务功能资源包的公共资源;其次,接收任一业务功能请求,并通过所述服务器通讯模块,将所述业务功能请求发送至所述Web服务器,所述业务功能请求包括业务功能标识;在所述Web服务器根据所述业务功能标识确定所述业务功能资源包后,通过所述服务器通讯模块获取所述业务功能资源包,最后,通过所述业务功能界面容器对所述业务功能资源包和所述公共资源包中的资源进行显示,所述业务功能资源包包括实现所述业务功能的除所述公共资源以外的资源。本发明采用框架模式,优化Web应用中资源下载的过程,同时利用框架中的缓存功能实现资源在客户端的管理机制,大大减少客户端与Web服务器的交互,节省网络下载流量,同时能够提升用户的体验。
附图说明
为了更清楚地说明本申请实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1为相邻页面资源对比图;
图2为本发明实施例一提供的基于Web应用的资源下载方法流程图;
图3为本发明实施例二提供的基于Web应用的资源下载装置结构图;
图4为本发明实施例三提供的基于Web应用的资源下载系统结构图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
在Web应用中,由于客户端需要频繁与Web服务器交互并下载资源,在此过程中,用户需要频繁等待Web服务器应答,对交互体验影响很大。如果能够优化资源下载过程,减少客户端与Web服务器的交互,那么不仅能够减少网络带宽的压力,还能提升用户的交互体验。本发明实施例采用框架模式对Web应用中的资源下载过程进行优化,减少客户端与Web服务器的交互,提升用户的交互体验。
实施例一
参考图2,图2为本实施例提供的基于Web应用的资源下载方法流程图,具体可以包括:
步骤201:接收任一框架请求,并将所述框架请求发送至所述Web服务器,所述框架请求包括框架标识。
本实施例中,首先接收任意一个框架请求,并将该框架请求发送至预访问的Web服务器,其中,该框架请求可以包括框架标识,框架标识用于唯一确定框架模块。实际操作中,用户可以通过打开浏览器,并在浏览器的地址栏中输入预访问的URL地址,完成向Web服务器发送框架请求。
步骤202:在所述Web服务器根据所述框架标识确定所述框架模块后,获取所述框架模块,所述框架模块包括公共资源包、业务功能界面容器和服务器通讯模块,所述公共资源包包括各个业务功能资源包的公共资源。
本实施例中,首先Web服务器接收框架请求后,根据框架请求中的框架标识确定该框架标识对应的框架模块,值得注意的是,该Web服务器中预先存储了框架标识和框架模块的对应关系。其次,在Web服务器确定框架模块后,获取该框架模块。其中,框架模块可以包括公共资源包、业务功能界面容器和服务器通讯模块。具体的,公共资源包可以包括Web服务器中的各个业务功能资源包的公共资源,也就是说,Web服务器需要预先提取所有业务功能资源包的公共部分作为公共资源存储于公共资源包中。业务功能界面容器用于显示任意一个业务功能资源包对应的页面,同时,服务器通讯模块用于客户端与Web服务器之间的通讯。
步骤203:接收任一业务功能请求,并通过所述服务器通讯模块,将所述业务功能请求发送至所述Web服务器,所述业务功能请求包括业务功能标识。
本实施例中,在获取框架模块后,框架模块一直处于运行状态,由框架模块控制客户端与服务器进行交互等操作。当接收任意一个业务功能请求后,通过框架模块的服务器通讯模块将该业务功能请求发送至Web服务器,其中,该业务功能请求可以包括业务功能标识,业务功能标识用于唯一确定业务功能资源包。
实际操作中,安装于客户端的浏览器加载框架模块后,后续的运行控制过程便由框架模块接管,此时浏览器不再参与客户端与Web服务器的交互过程。值得注意的是,在客户端与Web服务器的一次会话期间,框架模块一直处于运行状态。
步骤204:在所述Web服务器根据所述业务功能标识确定所述业务功能资源包后,通过所述服务器通讯模块获取所述业务功能资源包,并通过所述业务功能界面容器对所述业务功能资源包和所述公共资源包中的资源进行显示,所述业务功能资源包包括实现所述业务功能的除所述公共资源以外的资源。
本实施例中,Web服务器可以首先根据接收的业务功能标识确定业务功能资源包,其次,在该Web服务器确定业务功能资源包后,通过框架模块中的服务器通讯模块获取该业务功能资源包,最后,通过该框架模块中的业务功能界面容器将该业务功能资源包和公共资源包中的资源进行显示,以实现该业务功能资源包对应的功能。其中,该业务功能资源包可以包括能够实现该业务功能的除所述公共资源以外的资源,也就是说,将公共资源包中的资源和该业务功能资源包中的资源组合在一起可以实现该业务功能。
实际操作中,在一次会话期间,用户可能需要实现多个业务功能,对于每个业务功能页面的首次访问,框架模块都需要从Web服务器下载该业务功能对应的资源包。然而,本实施例可以在资源包下载后,将资源包缓存于框架模块中,当用户想要重新实现已经下载过的资源包对应的业务功能时,该框架模块可以不再重复从Web服务器下载。
具体的,所述框架模块还可以包括缓存管理器,在步骤204之后还可以包括:
将所述业务功能资源包缓存至所述缓存管理器,所述缓存管理器包括业务功能标识与业务功能资源包的对应关系。
本实施例中,获取的框架模块中还包括缓存管理器,具体的,该缓存管理器可以用于缓存业务功能资源包,将业务功能资源包缓存至缓存管理器以便再次重复对该业务功能有需求时,可以直接从该缓存管理器中获取所需业务功能资源包,而不需要客户端与Web服务器进行信息交互。
本实施例中,在将所述业务功能资源包缓存至所述缓存管理器之后,还可以包括:接收所述业务功能请求,并判断所述缓存管理器中是否存在与所述业务功能请求中的业务功能标识对应的业务功能资源包,如果是,则获取所述缓存管理器中的所述业务功能资源包。
实际操作中,当接收到业务功能请求时,可以首先判断该业务功能请求中的业务功能标识对应的业务功能资源包是否已经被缓存于框架模块的缓存管理器中,如果是,则说明该业务功能请求已经被接收处理过,同时,不需要从Web服务器中获取该业务功能资源包,而只需从缓存管理器中直接获取即可。
本实施例中,通过框架模块中的缓存管理器对已下载的业务功能资源包进行缓存,节省了客户端与Web服务器的交互次数,提升了用户的体验。
需要强调的是,在会话期间,如果各个模块都只下载一次,虽然极大减少了重复下载过程,但是其中也隐含一个风险,即在会话期间,如果Web服务器中的资源包变更了,在客户端的框架模块中缓存的业务功能资源包却得不到及时更新。本发明实施例通过在Web服务器中比较业务功能资源包的版本信息,这样就能够确保客户端的资源版本与Web服务器保持一致,避免了上述提到的因缓存导致的安全风险。
具体的,本实施例中的业务功能资源包还可以包括资源包版本信息,所述方法还可以包括:
首先,通过所述服务器通讯模块,将所述业务功能资源包中的所述资源包版本信息发送至所述Web服务器;
其次,当所述Web服务器根据所述资源包版本信息确定所述业务功能资源包不是最新版本时,通过所述服务器通讯模块重新获取所述业务功能标识对应的业务功能资源包。
本实施例中,在接收到重复的业务功能请求时,可以首先获取该业务功能请求对应的业务功能资源包中的资源包版本信息,其次,将该资源包版本信息发送至Web服务器,以比较缓存于缓存管理器中的业务功能资源包是否为最新版本,即判断Web服务器中的资源包是否更新。当所述Web服务器根据所述资源包版本信息确定所述业务功能资源包不是最新版本时,通过所述服务器通讯模块重新获取所述业务功能标识对应的业务功能资源包;相反的,当该业务功能资源包为最新版本时,Web服务器可以向客户端返回确认消息,此时,可以直接获取缓存管理器中的业务功能资源包即可。
因为框架模块相对抽象,同时比较稳定,这为框架模块的缓存创造了条件,所以,本发明实施例实现了对框架模块的缓存。
具体的,框架模块还可以包括框架版本信息,所述方法还可以包括:
首先,将所述框架模块缓存至任一存储空间,所述存储空间包括框架标识与框架模块的对应关系;
其次,接收任一框架请求,并判断所述存储空间中是否存在与所述框架标识对应的框架模块,如果是,则将所述框架模块的框架版本信息发送至所述Web服务器;
最后,所述Web服务器根据所述框架版本信息确定所述框架模块不是最新版本时,重新获取所述框架标识对应的框架模块。
本实施例中,为了实现框架模块的缓存,首先将获取的框架模块存储至客户端中的任意一个存储空间,具体的,该存储空间可以包括框架标识与框架模块的对应关系。当接收任意一个框架请求后,判断该存储空间中是否存在该框架请求中的框架标识对应的框架模块,如果存在,则将该框架模块中的框架版本信息发送至Web服务器,以判断该框架模块是否为最新版本,如果不是,则重新从Web服务器获取所述框架标识对应的框架模块;相反的,如果该框架模块是最新版本时,Web服务器可以向客户端返回确认消息,此时,可以直接获取存储空间中的框架模块即可。
本实施例首先接收任一框架请求,并将所述框架请求发送至所述Web服务器,所述框架请求包括框架标识;在所述Web服务器根据所述框架标识确定所述框架模块后,获取所述框架模块,所述框架模块包括公共资源包、业务功能界面容器和服务器通讯模块,所述公共资源包包括各个业务功能资源包的公共资源;其次,接收任一业务功能请求,并通过所述服务器通讯模块,将所述业务功能请求发送至所述Web服务器,所述业务功能请求包括业务功能标识;在所述Web服务器根据所述业务功能标识确定所述业务功能资源包后,通过所述服务器通讯模块获取所述业务功能资源包,最后,通过所述业务功能界面容器对所述业务功能资源包和所述公共资源包中的资源进行显示,所述业务功能资源包包括实现所述业务功能的除所述公共资源以外的资源。本实施例采用框架模式,优化Web应用中资源下载的过程,同时利用框架中的缓存功能实现资源在客户端的管理机制,大大减少客户端与Web服务器的交互,节省网络下载流量,同时能够提升用户的体验。
进一步的,本实施例对框架模块进行缓存,也减少了客户端与Web服务器的交互,节省网络下载流量。
更进一步的,本实施例在使用缓存中的框架模块或者任意一个缓存的业务功能资源包时,通过与Web服务器中版本的对比,解决了版本与Web服务器端不一致的问题。
实施例二
参考图3,图3为本实施例提供的基于Web应用的资源下载装置结构图,所述装置可以包括:
第一接收模块301,用于接收任一框架请求;
第一发送模块302,用于将所述框架请求发送至所述Web服务器,所述框架请求包括框架标识;
第一获取模块303,用于在所述Web服务器根据所述框架标识确定所述框架模块后,获取所述框架模块,所述框架模块包括公共资源包、业务功能界面容器和服务器通讯模块,所述公共资源包包括各个业务功能资源包的公共资源;
第二接收模块304,用于接收任一业务功能请求;
第二发送模块305,用于通过所述服务器通讯模块,将所述业务功能请求发送至所述Web服务器,所述业务功能请求包括业务功能标识;
第二获取模块306,用于在所述Web服务器根据所述业务功能标识确定所述业务功能资源包后,通过所述服务器通讯模块获取所述业务功能资源包;
显示模块307,用于通过所述业务功能界面容器对所述业务功能资源包和所述公共资源包中的资源进行显示,所述业务功能资源包包括实现所述业务功能的除所述公共资源以外的资源。
其中,所述框架模块还包括缓存管理器,所述装置还包括:
第一缓存模块,用于将所述业务功能资源包缓存至所述缓存管理器,所述缓存管理器包括业务功能标识与业务功能资源包的对应关系。
另外,所述装置还包括:
第三接收模块,用于接收所述业务功能请求;
第一判断模块,用于判断所述缓存管理器中是否存在与所述业务功能请求中的业务功能标识对应的业务功能资源包;
第三获取模块,用于在所述判断模块的结果为是时,获取所述缓存管理器中的所述业务功能资源包。
其中,所述业务功能资源包还包括所述资源包版本信息,所述装置还包括:
第三发送模块,用于通过所述服务器通讯模块,将所述业务功能资源包中的所述资源包版本信息发送至所述Web服务器;
第四获取模块,用于当所述Web服务器根据所述资源包版本信息确定所述业务功能资源包不是最新版本时,通过所述服务器通讯模块重新获取所述业务功能标识对应的业务功能资源包。
另外,所述框架模块还包括框架版本信息,所述装置还包括:
第二缓存模块,用于将所述框架模块缓存至任一存储空间,所述存储空间包括框架标识与框架模块的对应关系;
第四接收模块,用于接收任一框架请求;
第二判断模块,用于判断所述存储空间中是否存在与所述框架标识对应的框架模块;
第四发送模块,用于在所述第二判断模块的结果为是时,将所述框架模块的框架版本信息发送至所述Web服务器;
第五获取模块,用于当所述Web服务器根据所述框架版本信息确定所述框架模块不是最新版本时,重新获取所述框架标识对应的框架模块。
本实施例采用框架模式,优化Web应用中资源下载的过程,同时利用框架中的缓存功能实现资源在客户端的管理机制,大大减少客户端与Web服务器的交互,节省网络下载流量,同时能够提升用户的体验。
进一步的,本实施例对框架模块进行缓存,也减少了客户端与Web服务器的交互,节省网络下载流量。
更进一步的,本实施例在使用缓存中的框架模块或者任意一个缓存的业务功能资源包时,通过与Web服务器中版本的对比,解决了版本与Web服务器端不一致的问题。
实施例三
参考图4,图4为本实施例提供的基于Web应用的资源下载系统结构图,所述系统可以包括:客户端401和Web服务器402;
所述客户端,用于接收任一框架请求,并将所述框架请求发送至所述Web服务器,所述框架请求包括框架标识;
所述Web服务器,用于根据所述框架标识确定所述框架模块;
所述客户端,用于获取所述框架模块,所述框架模块包括公共资源包、业务功能界面容器和服务器通讯模块,所述公共资源包包括各个业务功能资源包的公共资源;
所述客户端,用于接收任一业务功能请求,并通过所述服务器通讯模块,将所述业务功能请求发送至所述Web服务器,所述业务功能请求包括业务功能标识;
所述Web服务器,用于根据所述业务功能标识确定所述业务功能资源包;
所述客户端,用于通过所述服务器通讯模块获取所述业务功能资源包,并通过所述业务功能界面容器对所述业务功能资源包和所述公共资源包中的资源进行显示,所述业务功能资源包包括实现所述业务功能的除所述公共资源以外的资源。
其中,所述框架模块还包括缓存管理器;
所述客户端,还用于将所述业务功能资源包缓存至所述缓存管理器,所述缓存管理器包括业务功能标识与业务功能资源包的对应关系。
另外,所述客户端,还用于接收所述业务功能请求,并判断所述缓存管理器中是否存在与所述业务功能请求中的业务功能标识对应的业务功能资源包,如果是,则获取所述缓存管理器中的所述业务功能资源包。
其中,所述业务功能资源包还包括所述资源包版本信息;
所述客户端,还用于通过所述服务器通讯模块,将所述业务功能资源包中的所述资源包版本信息发送至所述Web服务器;
所述Web服务器,用于根据所述资源包版本信息确定所述业务功能资源包是否为最新版本;
所述客户端,还用于当所述Web服务器根据所述资源包版本信息确定所述业务功能资源包不是最新版本时,通过所述服务器通讯模块重新获取所述业务功能标识对应的业务功能资源包。
另外,所述框架模块还包括框架版本信息;
所述客户端,还用于将所述框架模块缓存至任一存储空间,所述存储空间包括框架标识与框架模块的对应关系;
所述客户端,还用于接收任一框架请求,并判断所述存储空间中是否存在与所述框架标识对应的框架模块,如果是,则将所述框架模块的框架版本信息发送至所述Web服务器;
所述Web服务器,用于根据所述框架版本信息确定所述框架模块是否为最新版本;
所述客户端,还用于当所述Web服务器根据所述框架版本信息确定所述框架模块不是最新版本时,重新获取所述框架标识对应的框架模块。
本实施例提供的系统采用框架模式,优化Web应用中资源下载的过程,同时利用框架中的缓存功能实现资源在客户端的管理机制,大大减少客户端与Web服务器的交互,节省网络下载流量,同时能够提升用户的体验。
进一步的,本实施例提供的系统可以对框架模块进行缓存,也减少了客户端与Web服务器的交互,节省网络下载流量。
更进一步的,本实施例在使用缓存中的框架模块或者任意一个缓存的业务功能资源包时,通过与Web服务器中版本的对比,解决了版本与Web服务器端不一致的问题。
对于系统实施例而言,由于其基本对应于方法实施例,所以相关之处参见方法实施例的部分说明即可。以上所描述的系统实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性劳动的情况下,即可以理解并实施。
需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个......”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
以上对本发明实施例所提供的基于Web应用的资源下载方法、装置和系统进行了详细介绍,本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的一般技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本发明的限制。
Claims (15)
1.一种基于Web应用的资源下载方法,其特征在于,所述方法包括:
接收任一框架请求,并将所述框架请求发送至所述Web服务器,所述框架请求包括框架标识;
在所述Web服务器根据所述框架标识确定所述框架模块后,获取所述框架模块,所述框架模块包括公共资源包、业务功能界面容器和服务器通讯模块,所述公共资源包包括各个业务功能资源包的公共资源;
接收任一业务功能请求,并通过所述服务器通讯模块,将所述业务功能请求发送至所述Web服务器,所述业务功能请求包括业务功能标识;
在所述Web服务器根据所述业务功能标识确定所述业务功能资源包后,通过所述服务器通讯模块获取所述业务功能资源包,并通过所述业务功能界面容器对所述业务功能资源包和所述公共资源包中的资源进行显示,所述业务功能资源包包括实现所述业务功能的除所述公共资源以外的资源。
2.根据权利要求1所述的方法,其特征在于,所述框架模块还包括缓存管理器,所述方法还包括:
将所述业务功能资源包缓存至所述缓存管理器,所述缓存管理器包括业务功能标识与业务功能资源包的对应关系。
3.根据权利要求2所述的方法,其特征在于,所述方法还包括:
接收所述业务功能请求,并判断所述缓存管理器中是否存在与所述业务功能请求中的业务功能标识对应的业务功能资源包,如果是,则获取所述缓存管理器中的所述业务功能资源包。
4.根据权利要求3所述的方法,其特征在于,所述业务功能资源包还包括所述资源包版本信息,所述方法还包括:
通过所述服务器通讯模块,将所述业务功能资源包中的所述资源包版本信息发送至所述Web服务器;
当所述Web服务器根据所述资源包版本信息确定所述业务功能资源包不是最新版本时,通过所述服务器通讯模块重新获取所述业务功能标识对应的业务功能资源包。
5.根据权利要求1-4中任一所述的方法,其特征在于,所述框架模块还包括框架版本信息,所述方法还包括:
将所述框架模块缓存至任一存储空间,所述存储空间包括框架标识与框架模块的对应关系;
接收任一框架请求,并判断所述存储空间中是否存在与所述框架标识对应的框架模块,如果是,则将所述框架模块的框架版本信息发送至所述Web服务器;
当所述Web服务器根据所述框架版本信息确定所述框架模块不是最新版本时,重新获取所述框架标识对应的框架模块。
6.一种基于Web应用的资源下载装置,其特征在于,所述装置包括:
第一接收模块,用于接收任一框架请求;
第一发送模块,用于将所述框架请求发送至所述Web服务器,所述框架请求包括框架标识;
第一获取模块,用于在所述Web服务器根据所述框架标识确定所述框架模块后,获取所述框架模块,所述框架模块包括公共资源包、业务功能界面容器和服务器通讯模块,所述公共资源包包括各个业务功能资源包的公共资源;
第二接收模块,用于接收任一业务功能请求;
第二发送模块,用于通过所述服务器通讯模块,将所述业务功能请求发送至所述Web服务器,所述业务功能请求包括业务功能标识;
第二获取模块,用于在所述Web服务器根据所述业务功能标识确定所述业务功能资源包后,通过所述服务器通讯模块获取所述业务功能资源包;
显示模块,用于通过所述业务功能界面容器对所述业务功能资源包和所述公共资源包中的资源进行显示,所述业务功能资源包包括实现所述业务功能的除所述公共资源以外的资源。
7.根据权利要求6所述的装置,其特征在于,所述框架模块还包括缓存管理器,所述装置还包括:
第一缓存模块,用于将所述业务功能资源包缓存至所述缓存管理器,所述缓存管理器包括业务功能标识与业务功能资源包的对应关系。
8.根据权利要求7所述的装置,其特征在于,所述装置还包括:
第三接收模块,用于接收所述业务功能请求;
第一判断模块,用于判断所述缓存管理器中是否存在与所述业务功能请求中的业务功能标识对应的业务功能资源包;
第三获取模块,用于在所述判断模块的结果为是时,获取所述缓存管理器中的所述业务功能资源包。
9.根据权利要求8所述的装置,其特征在于,所述业务功能资源包还包括所述资源包版本信息,所述装置还包括:
第三发送模块,用于通过所述服务器通讯模块,将所述业务功能资源包中的所述资源包版本信息发送至所述Web服务器;
第四获取模块,用于当所述Web服务器根据所述资源包版本信息确定所述业务功能资源包不是最新版本时,通过所述服务器通讯模块重新获取所述业务功能标识对应的业务功能资源包。
10.根据权利要求6-9中任一所述的装置,其特征在于,所述框架模块还包括框架版本信息,所述装置还包括:
第二缓存模块,用于将所述框架模块缓存至任一存储空间,所述存储空间包括框架标识与框架模块的对应关系;
第四接收模块,用于接收任一框架请求;
第二判断模块,用于判断所述存储空间中是否存在与所述框架标识对应的框架模块;
第四发送模块,用于在所述第二判断模块的结果为是时,将所述框架模块的框架版本信息发送至所述Web服务器;
第五获取模块,用于当所述Web服务器根据所述框架版本信息确定所述框架模块不是最新版本时,重新获取所述框架标识对应的框架模块。
11.一种基于Web应用的资源下载系统,其特征在于,所述系统包括客户端和Web服务器;所述客户端,用于接收任一框架请求,并将所述框架请求发送至所述Web服务器,所述框架请求包括框架标识;
所述Web服务器,用于根据所述框架标识确定所述框架模块;
所述客户端,用于获取所述框架模块,所述框架模块包括公共资源包、业务功能界面容器和服务器通讯模块,所述公共资源包包括各个业务功能资源包的公共资源;
所述客户端,用于接收任一业务功能请求,并通过所述服务器通讯模块,将所述业务功能请求发送至所述Web服务器,所述业务功能请求包括业务功能标识;
所述Web服务器,用于根据所述业务功能标识确定所述业务功能资源包;
所述客户端,用于通过所述服务器通讯模块获取所述业务功能资源包,并通过所述业务功能界面容器对所述业务功能资源包和所述公共资源包中的资源进行显示,所述业务功能资源包包括实现所述业务功能的除所述公共资源以外的资源。
12.根据权利要求11所述的系统,其特征在于,所述框架模块还包括缓存管理器;
所述客户端,还用于将所述业务功能资源包缓存至所述缓存管理器,所述缓存管理器包括业务功能标识与业务功能资源包的对应关系。
13.根据权利要求12所述的系统,其特征在于,所述客户端,还用于接收所述业务功能请求,并判断所述缓存管理器中是否存在与所述业务功能请求中的业务功能标识对应的业务功能资源包,如果是,则获取所述缓存管理器中的所述业务功能资源包。
14.根据权利要求13所述的系统,其特征在于,所述业务功能资源包还包括所述资源包版本信息;
所述客户端,还用于通过所述服务器通讯模块,将所述业务功能资源包中的所述资源包版本信息发送至所述Web服务器;
所述Web服务器,用于根据所述资源包版本信息确定所述业务功能资源包是否为最新版本;
所述客户端,还用于当所述Web服务器根据所述资源包版本信息确定所述业务功能资源包不是最新版本时,通过所述服务器通讯模块重新获取所述业务功能标识对应的业务功能资源包。
15.根据权利要求11-14中任一所述的系统,其特征在于,所述框架模块还包括框架版本信息;
所述客户端,还用于将所述框架模块缓存至任一存储空间,所述存储空间包括框架标识与框架模块的对应关系;
所述客户端,还用于接收任一框架请求,并判断所述存储空间中是否存在与所述框架标识对应的框架模块,如果是,则将所述框架模块的框架版本信息发送至所述Web服务器;
所述Web服务器,用于根据所述框架版本信息确定所述框架模块是否为最新版本;
所述客户端,还用于当所述Web服务器根据所述框架版本信息确定所述框架模块不是最新版本时,重新获取所述框架标识对应的框架模块。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201310462661.1A CN103475744B (zh) | 2013-09-30 | 2013-09-30 | 一种基于Web应用的资源下载方法、装置和系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201310462661.1A CN103475744B (zh) | 2013-09-30 | 2013-09-30 | 一种基于Web应用的资源下载方法、装置和系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN103475744A true CN103475744A (zh) | 2013-12-25 |
CN103475744B CN103475744B (zh) | 2017-06-09 |
Family
ID=49800437
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201310462661.1A Active CN103475744B (zh) | 2013-09-30 | 2013-09-30 | 一种基于Web应用的资源下载方法、装置和系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN103475744B (zh) |
Cited By (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106155722A (zh) * | 2015-04-09 | 2016-11-23 | 华为技术有限公司 | 一种软件页面更新方法及终端 |
CN106201153A (zh) * | 2015-04-29 | 2016-12-07 | 阿里巴巴集团控股有限公司 | 一种操作入口展示方法及装置 |
CN106202083A (zh) * | 2015-04-30 | 2016-12-07 | 阿里巴巴集团控股有限公司 | 用于web页面的资源打包系统、方法及装置 |
CN107026884A (zh) * | 2016-02-02 | 2017-08-08 | 阿里巴巴集团控股有限公司 | 资源文件的获取方法、客户端、服务器和系统 |
CN107087029A (zh) * | 2017-04-25 | 2017-08-22 | 广州市诚毅科技软件开发有限公司 | 一种关于web前端资源文件版本统一管理与发布的方法 |
CN107172110A (zh) * | 2016-03-07 | 2017-09-15 | 阿里巴巴集团控股有限公司 | 一种应用app的资源加载方法、业务功能实现方法及装置 |
CN108008966A (zh) * | 2017-12-04 | 2018-05-08 | 山东浪潮通软信息科技有限公司 | 一种资源更新方法和系统 |
WO2018095306A1 (zh) * | 2016-11-25 | 2018-05-31 | 腾讯科技(深圳)有限公司 | 应用程序页面处理方法、装置及存储介质 |
CN109445813A (zh) * | 2018-09-18 | 2019-03-08 | 平安科技(深圳)有限公司 | 一种文件引用方法及装置 |
CN110688176A (zh) * | 2019-09-09 | 2020-01-14 | 平安普惠企业管理有限公司 | 基于app应用程序的类库文件调用方法及相关设备 |
CN113076128A (zh) * | 2020-01-03 | 2021-07-06 | 北京猎户星空科技有限公司 | 用于机器人配置的方法、装置、电子设备及存储介质 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101131747A (zh) * | 2006-08-22 | 2008-02-27 | 国际商业机器公司 | 捕获和/或分析客户端的Web页面事件的方法、装置及系统 |
CN101997927A (zh) * | 2010-11-18 | 2011-03-30 | 厦门市美亚柏科信息股份有限公司 | 一种web平台数据缓存的方法和系统 |
CN103177042A (zh) * | 2011-12-26 | 2013-06-26 | 宇龙计算机通信科技(深圳)有限公司 | 一种网页浏览的方法及装置 |
-
2013
- 2013-09-30 CN CN201310462661.1A patent/CN103475744B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101131747A (zh) * | 2006-08-22 | 2008-02-27 | 国际商业机器公司 | 捕获和/或分析客户端的Web页面事件的方法、装置及系统 |
CN101997927A (zh) * | 2010-11-18 | 2011-03-30 | 厦门市美亚柏科信息股份有限公司 | 一种web平台数据缓存的方法和系统 |
CN103177042A (zh) * | 2011-12-26 | 2013-06-26 | 宇龙计算机通信科技(深圳)有限公司 | 一种网页浏览的方法及装置 |
Non-Patent Citations (1)
Title |
---|
魏丹: "Web服务器性能与Web框架应用研究", 《中国优秀硕士学位论文全文数据库》 * |
Cited By (18)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106155722A (zh) * | 2015-04-09 | 2016-11-23 | 华为技术有限公司 | 一种软件页面更新方法及终端 |
CN106201153A (zh) * | 2015-04-29 | 2016-12-07 | 阿里巴巴集团控股有限公司 | 一种操作入口展示方法及装置 |
CN106201153B (zh) * | 2015-04-29 | 2020-01-24 | 阿里巴巴集团控股有限公司 | 一种操作入口展示方法及装置 |
CN106202083A (zh) * | 2015-04-30 | 2016-12-07 | 阿里巴巴集团控股有限公司 | 用于web页面的资源打包系统、方法及装置 |
CN107026884A (zh) * | 2016-02-02 | 2017-08-08 | 阿里巴巴集团控股有限公司 | 资源文件的获取方法、客户端、服务器和系统 |
US11693704B2 (en) | 2016-03-07 | 2023-07-04 | Advanced New Technologies Co., Ltd. | Resource loading and a service function for a software application |
CN107172110A (zh) * | 2016-03-07 | 2017-09-15 | 阿里巴巴集团控股有限公司 | 一种应用app的资源加载方法、业务功能实现方法及装置 |
US11132232B2 (en) | 2016-03-07 | 2021-09-28 | Advanced New Technologies Co., Ltd. | Resource loading and a service function for a software application |
US11249806B2 (en) | 2016-03-07 | 2022-02-15 | Advanced New Technologies Co., Ltd. | Resource loading and a service function for a software application |
WO2018095306A1 (zh) * | 2016-11-25 | 2018-05-31 | 腾讯科技(深圳)有限公司 | 应用程序页面处理方法、装置及存储介质 |
US11119812B2 (en) | 2016-11-25 | 2021-09-14 | Tencent Technology (Shenzhen) Company Limited | Method and device for processing application program page according to a common interface container |
CN107087029A (zh) * | 2017-04-25 | 2017-08-22 | 广州市诚毅科技软件开发有限公司 | 一种关于web前端资源文件版本统一管理与发布的方法 |
CN108008966A (zh) * | 2017-12-04 | 2018-05-08 | 山东浪潮通软信息科技有限公司 | 一种资源更新方法和系统 |
CN108008966B (zh) * | 2017-12-04 | 2020-11-03 | 浪潮通用软件有限公司 | 一种资源更新方法和系统 |
CN109445813A (zh) * | 2018-09-18 | 2019-03-08 | 平安科技(深圳)有限公司 | 一种文件引用方法及装置 |
CN110688176A (zh) * | 2019-09-09 | 2020-01-14 | 平安普惠企业管理有限公司 | 基于app应用程序的类库文件调用方法及相关设备 |
CN113076128A (zh) * | 2020-01-03 | 2021-07-06 | 北京猎户星空科技有限公司 | 用于机器人配置的方法、装置、电子设备及存储介质 |
CN113076128B (zh) * | 2020-01-03 | 2023-11-10 | 北京猎户星空科技有限公司 | 用于机器人配置的方法、装置、电子设备及存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN103475744B (zh) | 2017-06-09 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN103475744A (zh) | 一种基于Web应用的资源下载方法、装置和系统 | |
CN106528432B (zh) | 测试场景数据的构建方法及装置、埋点测试方法 | |
CN103765423B (zh) | 收集与本地存储的数据文件相关联的事务数据 | |
CN109542427B (zh) | 一种系统定制方法、装置及电子设备和存储介质 | |
CN102362261B (zh) | 通过网络浏览器输入内容至应用程序 | |
CN110519401A (zh) | 提高网络访问成功率的方法、装置、设备及存储介质 | |
CN104572968B (zh) | 一种页面更新方法和装置 | |
CN107967143A (zh) | 获取客户端应用程序源代码的更新指示信息的方法、装置和系统 | |
CN104111944A (zh) | 页面处理方法和装置以及页面生成方法和装置 | |
CN104902327A (zh) | 一种页面的内容更新及下发方法、智能电视和系统 | |
CN105657000A (zh) | 消息传送方法及装置 | |
CN109032587B (zh) | 一种数据流管理框架、方法、终端设备及存储介质 | |
CN103577415A (zh) | 用于更新移动搜索应用所对应的搜索配置的方法与设备 | |
CN108280174A (zh) | 前端文件构建方法和服务器、页面访问方法和终端 | |
CN104009979A (zh) | 一种传输数据的方法 | |
CN103347029A (zh) | 业务数据交互方法、终端、服务器和系统 | |
CN103684977A (zh) | 信息发送方法及装置、信息显示方法及装置 | |
CN104143110A (zh) | 带网址信息的二维码生成方法 | |
CN102769625A (zh) | 客户端Cookie信息获取方法和装置 | |
CN108123970A (zh) | 数据展示方法及相关装置 | |
CN104023073A (zh) | 一种资源的推送方法、系统及装置 | |
CN103248627A (zh) | 实现访问网站资源的方法、正向代理服务器和系统 | |
CN109344351A (zh) | 网页加载方法、中间服务器和网页加载系统 | |
CN102523271B (zh) | 一种终端及其通信方法、系统 | |
CN104461509A (zh) | 一种信息交互架构及方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |