页面的加载方法、装置和设备与流程

文档序号:11964422阅读:192来源:国知局
页面的加载方法、装置和设备与流程

本发明涉及计算机技术领域,尤其涉及一种页面的加载方法、装置和设备。



背景技术:

随着智能终端的技术飞速发展,终端设备的应用也越发广泛,然而终端设备操作系统中安装了各式各样的应用程序(application,APP),绝大多数APP都会对网络以及Web页面做了相应处理并展现给用户,当用户在浏览Web页面的时候,由于受到网络环境波动等因素的影响,从而体现出了不同用户体验,所以移动终端应用内网页的加载速度成为了一个APP用户体验好坏的衡量标准。

目前常用页面加载方式是利用终端设备操作系统的Web容器都有页面缓存策略,可以缓存当前网页已加载的部分资源内容,在同一个进程不被销毁的情况下可以依照选择的缓存策略来展示已经缓存的数据,从而提升网页的加载速度。

然而,当APP进程消亡后再次进入APP进程时,则需要重新向服务器获取页面资源加载该网页,不能快速展现缓存数据。



技术实现要素:

本发明提供一种页面的加载方法、装置和设备,用于解决当APP进程消亡后再次进入APP进程时,则需要重新向服务器获取页面资源加载该网页,不能快速展现缓存数据的问题。

本发明第一方面提供一种页面的加载方法,包括:

向服务器发送页面数据请求;所述页面数据请求包括网页地址;

接收所述服务器返回的第一页面版本号;

确定所述第一页面版本号与本地缓存的页面资源的当前页面版本号是否相同;

若所述第一页面版本号与所述当前页面版本号相同,则使用本地缓存的所述页面资源渲染页面,并将所述页面进行显示。

可选的,所述方法还包括:

若所述第一页面版本号与所述当前页面版本号不相同,则向所述服务器发送页面资源获取请求;

接收所述服务器返回的与所述第一页面版本号对应的第一页面资源;

根据所述第一页面资源加载页面,并将所述页面进行显示。

可选的,所述向服务器发送页面数据请求之前,所述方法还包括:

获取所述网页地址。

可选的,所述使用本地缓存的所述页面资源渲染页面,包括:

将所述页面资源渲染在网页容器中得到所述页面。

本发明第二方面提供一种页面的加载装置,包括:

发送模块,用于向服务器发送页面数据请求;所述页面数据请求包括网页地址;

接收模块,用于接收所述服务器返回的第一页面版本号;

处理模块,用于确定所述第一页面版本号与本地缓存的页面资源的当前页面版本号是否相同;

若所述第一页面版本号与所述当前页面版本号相同,则所述处理模块还用于使用本地缓存的所述页面资源渲染页面;

显示模块,用于将所述页面进行显示。

可选的,所述装置还包括:

若所述第一页面版本号与所述当前页面版本号不相同,则所述发送模块还用于向所述服务器发送页面资源获取请求;

所述接收模块还用于接收所述服务器返回的与所述第一页面版本号对应的第一页面资源;

所述处理模块还用于根据所述第一页面资源加载页面,并通过所述显示模块将所述页面进行显示。

可选的,所述发送模块向服务器发送页面数据请求之前,所述装置还包括:

获取模块,用于获取所述网页地址。

可选的,所述处理模块具体用于将所述页面资源渲染在网页容器中得到所述页面。

本发明第三方面提供一种终端设备,包括:用于控制可执行指令执行的处理器、用于存储处理器可执行指令的存储器、接收器、发送器以及显示器;

所述发送器用于向服务器发送页面数据请求;所述页面数据请求包括网页地址;

所述接收器用于接收所述服务器返回的第一页面版本号;

所述处理器用于确定所述第一页面版本号与本地缓存的页面资源的当前页面版本号是否相同;

若所述第一页面版本号与所述当前页面版本号相同,则所述处理器还用于使用本地缓存的所述页面资源渲染页面;

所述显示器用于将所述页面进行显示。

本发明实施例提供的页面的加载方法,在用户打开页面时,向服务器发送携带网页地址的页面数据请求,接收所述服务器返回的第一页面版本号,确定所述第一页面版本号与本地缓存的页面资源的当前页面版本号是否相同,若所述第一页面版本号与所述当前页面版本号相同,则使用本地缓存的所述页面资源渲染页面,并将所述页面进行显示,不管在新的进程还是同一个进程的网页加载过程中,通过判断页面版本变化使用本地缓存的页面资源替代从网络服务器获取资源,进行页面加载,有效提高加载效率,并节省网络资源。

附图说明

为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其它的附图。

图1为本发明实施例提供的页面的加载方法实施例的流程图;

图2为本发明实施例提供的页面的加载方法一实例的流程图;

图3为本发明实施例提供的页面的加载装置实施例一的结构示意图;

图4为本发明实施例提供的页面的加载装置实施例二的结构示意图;

图5为本发明实施例提供的终端设备的结构示意图。

具体实施方式

为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其它实施例,都属于本发明保护的范围。

图1为本发明实施例提供的页面的加载方法实施例的流程图,如图1所示,该方案的执行主体为终端设备,可安装多种应用程序的客户端,该页面的加载方法的具体实现步骤为:

步骤S101,向服务器发送页面数据请求;所述页面数据请求包括网页地址。

在本步骤中,用户打开应用程序时,需要请求主页面,或者根据用户的点击需要进入对应的二级页面时,均需要向网络服务器或者应用程序的服务器请求对应的页面,即向对应的服务器发送页面数据请求,该页面数据请求中至少包括页面地址,例如:统一资源定位符(Uniform Resource Locator,URL)。请求的页面数据一般指的是页面需要的图片等数据,例如超级文本标记语言(HyperText Markup Language,HTML)数据,“超文本”就是指页面内可以包含图片、链接,甚至音乐、程序等非文字元素。

在该方案的一种具体实现方式中,终端设备需要预先获取网页地址。终端设备根据用户在应用程序中的点击操作确定用户要打开的页面的网页地址,或者获取用户输入的网页地址(在浏览器应用中,用户可以直接在地址栏输入要访问的页面地址),然后根据该网页地址再发送页面数据请求。

步骤S102,接收所述服务器返回的第一页面版本号。

在本步骤中,与现有数据不同的是,服务器可以不直接返回数据,而是将用户访问的网页地址对应的数据中的页面版本号返回给终端设备,以使终端设备确定是否要从网络侧继续获取数据。

该方案中,页面版本号为在HTML资源组成中给每个必要的资源文件增加一个版本号作为标志,以便终端设备在获取资源数据的时候能够返回该版本号,以使终端设备可以分析确定是否要从网络侧获取资源数据。

步骤S103,确定所述第一页面版本号与本地缓存的页面资源的当前页面版本号是否相同。

步骤S104,若所述第一页面版本号与所述当前页面版本号相同,则使用本地缓存的所述页面资源渲染页面,并将所述页面进行显示。

在上述两个步骤中,终端设备确定是否需要从服务器侧获取资源数据的具体实现方式为:将服务器返回的第一页面版本号与本地缓存的页面资源的当前页面版本号进行对比,确定要访问的数据是否已经被缓存在本地。

如果第一页面版本号与本地存储的当前页面版本号相同,则认为本地缓存的页面资源与页面访问请求要请求的数据相同,此时则不需要从服务器再次获取,将所述页面资源渲染在网页容器中得到所述页面。即可以直接将本地缓存的页面资源在应用程序的Web容器中进行渲染,并将得到的页面显示给用户。

在上述过程的基础上,所述方法还包括:

若所述第一页面版本号与所述当前页面版本号不相同,则向所述服务器发送页面资源获取请求;接收所述服务器返回的与所述第一页面版本号对应的第一页面资源;根据所述第一页面资源加载页面,并将所述页面进行显示。

其含义是指,当确定出第一页面版本号与当前页面版本号码不相同,则认为该页面进行更新,即要重新获取页面资源进行页面加载,即可以再次向服务器发送页面资源获取请求或者反馈信息,指示出需要获取页面资源即可。终端设备接收服务器发送的页面资源,然后根据新的获取到的页面资源在Web容器中进行渲染加载,并将得到的页面显示给用户。

本实施例提供的页面的加载方法,在用户进行打开页面或者输入页面地址等操作时,向服务器发送携带网页地址的页面数据请求,接收所述服务器返回的第一页面版本号,确定所述第一页面版本号与本地缓存的页面资源的当前页面版本号是否相同,若所述第一页面版本号与所述当前页面版本号相同,则使用本地缓存的所述页面资源渲染页面,并将所述页面进行显示,不管在新的进程还是同一个进程的网页加载过程中,通过判断页面版本变化使用本地缓存的页面资源替代从网络服务器获取资源,进行页面加载,有效提高加载效率,并节省网络资源。

现有技术的方案中,系统现有的页面缓存技术不能针对进程而独立存在,也就是说当APP进程消亡后再次进入APP进程加载该网页便不能快速展现缓存数据。系统现有的页面数据缓存并不能选择性缓存数据,也就是说只能一次性全部缓存或者全部不缓存,不能及时刷新到想要刷新的页面部分。

针对上述问题,本方案提出一种新的页面的加载方法,通过截获并分析Web页面的全部资源请求,在必要时使用本地已缓存的资源数据节省网络数据请求,从而达到提升Web页的加载速度的目的。

在上述实施例一的基础上,下面提供一种具体的实现方式。

APP的Web容器正常加载一个网页的顺序为:

a)、获取网页地址URL,请求该页面的HTML数据。

b)、分析加载HTML中网页所需的资源文件(css/js/图片等)。

c)、从服务器获取到每个资源文件后渲染在Web容器内,并展示出来。

然而上述方式中,需要APP进程无论在什么情况下每次都要去重新请求加载这些资源文件。

图2为本发明实施例提供的页面的加载方法一实例的流程图,如图2所示,在HTML的资源组成部分给每个必要的资源文件url增加一个版本号(cacheVersion),然后在Web容器请求加载这些资源时,截获这些请求并分析远程服务器需要的版本号与本地之前已缓存的数据版本号是否一致,如果一致就省去远程数据请求直接使用本地已缓存的资源数据,从而快速的加载资源达到快速加载网页页面的效果。具体的流程如下:

a)、获取网页地址URL,请求该页面的HTML数据。

b)、分析加载HTML中网页所需的资源文件(css/js/图片等)。

c)、截获每一个资源文件的请求,分析其携带的版本号(cacheVersion)值来判断是否有更新,若有更新则请求网络资源数据,若无更新则直接使用本地缓存的资源数据。

d)、得到全部资源数据渲染在Web容器内,并展示出来。

图2中可以看出,相比系统未处理的情况,及时APP进程被中断,也可以随时使用本地的资源数据来快速渲染,并且可以很简单的控制局部数据的更新(只需要变更相应资源数据的cacheVersion即可),然而APP的Web页面的更新往往不是极其频繁的,所以大大节省了页面的加载效率。

本发明提供的页面的加载方法,有效的提升网页的加载速度,尤其在网络不太稳定的状态下,大大的节省了网络数据请求,并且可以实现局部加载的逻辑,给公司APP内的网页加载体验提升,并且可以节约网络资源,减少资源浪费,提高用户体验。

图3为本发明实施例提供的页面的加载装置实施例一的结构示意图;如图3所示,本实施例提供的页面的加载装置10包括:

发送模块11,用于向服务器发送页面数据请求;所述页面数据请求包括网页地址;

接收模块12,用于接收所述服务器返回的第一页面版本号;

处理模块13,用于确定所述第一页面版本号与本地缓存的页面资源的当前页面版本号是否相同;

若所述第一页面版本号与所述当前页面版本号相同,则所述处理模块13还用于使用本地缓存的所述页面资源渲染页面;

显示模块14,用于将所述页面进行显示。

可选的,若所述第一页面版本号与所述当前页面版本号不相同,则所述发送模块11还用于向所述服务器发送页面资源获取请求;

所述接收模块12还用于接收所述服务器返回的与所述第一页面版本号对应的第一页面资源;

所述处理模块13还用于根据所述第一页面资源加载页面,并通过所述显示模块将所述页面进行显示。

本实施例提供的页面的加载装置,用于执行前述任一实施例提供的方法实施例的技术方案,其实现原理和技术效果类似,在此不再赘述。

图4为本发明实施例提供的页面的加载装置实施例二的结构示意图,如图4所示,在上述实施例一的基础上,所述发送模块11向服务器发送页面数据请求之前,该页面的加载装置10还包括:

获取模块15,用于获取所述网页地址。

可选的,所述处理模块13具体用于将所述页面资源渲染在网页容器中得到所述页面。

本实施例提供的页面的加载装置,用于执行前述任一实施例提供的方法实施例的技术方案,其实现原理和技术效果类似,在此不再赘述。

图5为本发明实施例提供的终端设备的结构示意图,如图所示,该终端设备包括:

用于控制可执行指令执行的处理器、用于存储处理器可执行指令的存储器、接收器、发送器以及显示器;

所述发送器用于向服务器发送页面数据请求;所述页面数据请求包括网页地址;

所述接收器用于接收所述服务器返回的第一页面版本号;

所述处理器用于确定所述第一页面版本号与本地缓存的页面资源的当前页面版本号是否相同;

若所述第一页面版本号与所述当前页面版本号相同,则所述处理器还用于使用本地缓存的所述页面资源渲染页面;

所述显示器用于将所述页面进行显示。

可选的,若所述第一页面版本号与所述当前页面版本号不相同,则所述发送器还用于向所述服务器发送页面资源获取请求;

所述接收器还用于接收所述服务器返回的与所述第一页面版本号对应的第一页面资源;

所述处理器还用于根据所述第一页面资源加载页面,并通过所述显示模块将所述页面进行显示。

可选的,所述发送器向服务器发送页面数据请求之前,所述处理器还用于获取所述网页地址。

可选的,所述处理器具体用于将所述页面资源渲染在网页容器中得到所述页面。

本实施例提供的终端设备,用于执行前述任一实施例提供的方法实施例的技术方案,其实现原理和技术效果类似,在此不再赘述。

在上述终端设备实施例中,应理解,处理器可以是中央处理单元(英文:Central Processing Unit,简称:CPU),还可以是其他通用处理器、数字信号处理器(英文:Digital Signal Processor,简称:DSP)、专用集成电路(英文:Application Specific Integrated Circuit,简称:ASIC)等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。结合本发明实施例所公开的方法的步骤可以直接体现为硬件处理器执行完成,或者用处理器中的硬件及软件模块组合执行完成。

本领域普通技术人员可以理解:实现上述各方法实施例的全部或部分步骤可以通过程序指令相关的硬件来完成。前述的程序可以存储于一计算机可读取存储介质中。该程序在执行时,执行包括上述各方法实施例的步骤;而前述的存储介质包括:只读存储器(英文:read-only memory,缩写:ROM)、RAM、快闪存储器、硬盘、固态硬盘、磁带(英文:magnetic tape)、软盘(英文:floppy disk)、光盘(英文:optical disc)及其任意组合。

最后应说明的是:以上各实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述各实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分或者全部技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的范围。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1