一种页面加载方法和设备技术

技术编号:18458714 阅读:32 留言:0更新日期:2018-07-18 12:40
本申请公开了一种页面加载方法和设备,包括:接收页面加载请求,并确定所述页面加载请求中包含的待加载页面所记载业务的业务类型;从离线数据包集中查找与所述业务类型对应的离线数据包,业务类型相同的业务所对应的页面的页面资源在同一个离线数据包中;从查找到的所述离线数据包中获取加载所述待加载页面所需要的页面资源,并利用所述页面资源执行页面渲染操作以完成页面加载。针对发起的HTML页面加载请求,准确定位待加载页面的业务类型,进而快速根据业务类型确定包含待加载页面的离线数据包,并获取离线数据包中的页面资源,进而实现本地加载页面资源,有效提升了现有技术中页面加载时间过长的问题。

A page loading method and device

The present application discloses a page loading method and device, including: receiving a page loading request, and determining the business type of the business that is recorded in the page loading request contained in the page loading request; from the offline packet centralization to find the offline packet corresponding to the type of business, and the business of the same business type. The page resource of the page is in the same offline packet; from the found offline data packet to get the page resources required to load the page to be loaded, and use the page resources to perform page rendering to complete the page loading. According to the HTML page loading request, it can accurately locate the service type of the page to be loaded, then quickly determine the offline packet containing the page to be loaded according to the service type, and obtain the page resources in the offline packet, and then implement the local loading page resources, which effectively improves the page loading time in the existing technology. The long problem.

【技术实现步骤摘要】
一种页面加载方法和设备
本申请涉及互联网信息处理技术以及计算机
,尤其涉及一种页面加载方法和设备。
技术介绍
随着科学技术以及通信技术的发展,出现了移动互联网。所谓移动互联网是移动通信和互联网融合的产物。即在运营商提供的移动通信平台上发布各种互联网应用,以实现为不同用户提供网络服务。在移动互联网开发领域,存在NativeApp(原生应用)、WebApp(网页应用)和HybridApp(混合模式移动应用)这三种类型的应用。其中,NativeApp又被称之为传统App,即针对iOS、Android等各种不同的手机操作系统采用不同的语言进行开发得到的App,这种App拥有良好的硬件设备API支持,提供优质的用户界面,实现复杂的动画交互,给用户以良好的用户体验;WebApp是一种采用网页技术在移动端进行开发的App;HybridApp作为一种混合模式的移动应用,兼具了NativeApp和WebApp的诸多优点。HybridApp既拥有NativeApp的硬件设备API,能够支持HTML(HyperTextMarkupLanguage;超文本标记语言)5/JS(JavaScript;脚本语言)/CSS(CascadingStyleSheets;层叠样式表)等各种前端语言进行开发,又具备WebApp的跨平台、发布效率高等优势,成为移动互联网的应用开发者必不可少的技术选择。然而,HybridApp在响应HTML页面的加载请求时存在页面加载时间过程的问题。
技术实现思路
有鉴于此,本申请实施例提供了一种页面加载方法和设备,用于解决现有技术中HybridAPP在响应HTML页面的加载请求时存在页面加载时间过程的问题。本申请实施例提供一种页面加载方法,包括:接收页面加载请求,并确定所述页面加载请求中包含的待加载页面所记载业务的业务类型;从离线数据包集中查找与所述业务类型对应的离线数据包,所述离线数据包集中包含至少一个离线数据包,业务类型相同的业务所对应的页面的页面资源在同一个离线数据包中;从查找到的所述离线数据包中获取加载所述待加载页面所需要的页面资源,并利用所述页面资源执行页面渲染操作以完成页面加载。本申请实施例还提供一种页面加载设备,包括:接收单元,接收页面加载请求;处理单元,确定所述页面加载请求中包含的待加载页面所记载业务的业务类型;并从离线数据包集中查找与所述业务类型对应的离线数据包,所述离线数据包集中包含至少一个离线数据包,业务类型相同的业务所对应的页面的页面资源在同一个离线数据包中;从查找到的所述离线数据包中获取加载所述待加载页面所需要的页面资源;加载单元,利用所述页面资源执行页面渲染操作以完成页面加载。本申请实施例采用的上述至少一个技术方案能够达到以下有益效果:通过接收页面加载请求,并确定所述页面加载请求中包含的待加载页面所记载业务的业务类型;从离线数据包集中查找与所述业务类型对应的离线数据包,所述离线数据包集中包含至少一个离线数据包,业务类型相同的业务所对应的页面的页面资源在同一个离线数据包中;从查找到的所述离线数据包中获取加载所述待加载页面所需要的页面资源,并利用所述页面资源执行页面渲染操作以完成页面加载。针对发起的HTML页面加载请求,准确定位待加载页面的业务类型,进而快速根据业务类型确定包含待加载页面的离线数据包,并获取离线数据包中的页面资源,进而实现本地加载页面资源,有效提升了现有技术中页面加载时间过长的问题,不仅有效提升页面加载效率,而且还改善了页面加载的准确性。附图说明此处所说明的附图用来提供对本申请的进一步理解,构成本申请的一部分,本申请的示意性实施例及其说明用于解释本申请,并不构成对本申请的不当限定。在附图中:图1为本申请实施例中提供的一种页面加载方法的流程示意图;图2为本申请实施例中提供的一种页面加载方法的流程示意图;图3为本申请实施例构建响应数据的流程示意图;图4为本申请实施例提供的一种离线数据包更新方法的流程示意图;图5为本申请实施例提供的一种页面加载方法的流程示意图;图6为本申请实施例提供的一种页面加载方法的场景示意图;图7为本申请实施例提供的一种页面加载设备的结构示意图。具体实施方式为了实现本申请的目的,本申请实施例提供了一种页面加载方法和设备,针对发起的HTML页面加载请求,准确定位待加载页面的业务类型,进而快速根据业务类型确定包含待加载页面的离线数据包,并获取离线数据包中的页面资源,进而实现本地加载页面资源,有效提升了现有技术中页面加载时间过长的问题,不仅有效提升页面加载效率,而且还改善了页面加载的准确性。本申请实施例中利用NSURLProtocol(URL加载系统)和NSURLProtocolClient(URL加载系统客户端)实现HybridAPP加载本地磁盘的HTML页面。本申请实施例中所记载的NSURLProtocol是Cocoatouch框架提供的抽象类,由一系列的回调函数组成,为加载URL对应的页面数据提供基础的结构,可劫持全局由NSURLConnection发起的网络请求,通过重写NSURLProtocol方法实现定制发起Request请求(可理解为页面加载获取请求)、返回需要的页面数据,对已有网络协议进行处理等等。本申请实施例中所记载的NSURLProtocolClient(可以视为本申请实施例中所记载的终端设备中安装的APP)提供NSURLProtocol对象控制URLLoadingSystem加载URL的方法。当NSURLProtocol对象对URL对应的页面数据进行各种操作时,需要调用NSURLProtocolClient的方法。本申请实施例中所记载的响应数据可以是指支持HTTP(HyperTextTransferProtocol;超文本传输)协议的数据,该响应数据包含两部分,一部分称之为数据头,包括页面加载请求的资源类型、数据长度以及页面加载请求中包含的地址(本申请实施例中所记载的地址可以为URL(UniformResourceLocator,统一资源定位符));另一部分称之为数据内容,包括HTML文件和静态资源文件;也可以是支持其他协议的数据,这里不做具体限定。本申请实施例中所记载的静态资源文件包含但不限于JS(JavaScript;脚本语言)文件、CSS(CascadingStyleSheets;层叠样式表)文件、图片资源文件。本申请实施例中所记载的页面资源包含但不限于HTML文件和静态资源文件。本申请实施例中所记载的“本地”可以理解为终端设备的磁盘、存储器等。本申请实施例中所记载的所述业务类型包含机票类型、酒店类型、火车票类型、公共汽车票类型、旅行类型、景点门票类型中的至少一种或者多种。不同业务类型对应的页面所需要的HTML文件和/或静态资源文件存在差异。为使本申请的目的、技术方案和优点更加清楚,下面将结合本申请具体实施例及相应的附图对本申请技术方案进行清楚、完整地描述。显然,所描述的实施例仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。以下结合附图,详细说明本申请各实施例提供的技术方案。实施例1图1为本申请实施例提供的一本文档来自技高网...

【技术保护点】
1.一种页面加载方法,其特征在于,包括:接收页面加载请求,并确定所述页面加载请求中包含的待加载页面所记载业务的业务类型;从离线数据包集中查找与所述业务类型对应的离线数据包,所述离线数据包集中包含至少一个离线数据包,业务类型相同的业务所对应的页面的页面资源在同一个离线数据包中;从查找到的所述离线数据包中获取加载所述待加载页面所需要的页面资源,并利用所述页面资源执行页面渲染操作以完成页面加载。

【技术特征摘要】
1.一种页面加载方法,其特征在于,包括:接收页面加载请求,并确定所述页面加载请求中包含的待加载页面所记载业务的业务类型;从离线数据包集中查找与所述业务类型对应的离线数据包,所述离线数据包集中包含至少一个离线数据包,业务类型相同的业务所对应的页面的页面资源在同一个离线数据包中;从查找到的所述离线数据包中获取加载所述待加载页面所需要的页面资源,并利用所述页面资源执行页面渲染操作以完成页面加载。2.根据权利要求1所述的页面加载方法,其特征在于,从查找到的所述离线数据包中获取加载所述待加载页面所需要的页面资源,包括:确定所述待加载页面的逻辑地址;根据页面的逻辑地址与页面资源的物理存储地址之间的映射关系,确定与所述待加载页面的逻辑地址对应的页面资源的物理存储地址;根据所述物理存储地址,从查找到的所述离线数据包中获取加载所述待加载页面所需要的页面资源。3.根据权利要求1所述的页面加载方法,其特征在于,从查找到的所述离线数据包中获取加载所述待加载页面所需要的页面资源,包括:判断缓存中是否存储加载所述待加载页面所需要的页面资源;若判断结果是缓存中尚未存储加载所述待加载页面所需要的页面资源,则从查找到的所述离线数据包中获取所述页面资源。4.根据权利要求3所述的页面加载方法,其特征在于,所述方法还包括:若判断结果是缓存中已存储加载所述待加载页面所需要的页面资源,则调用数据获取函数,从所述缓存中调取所述页面资源。5.根据权利要求1所述的页面加载方法,其特征在于,通过以下方式得到业务类型与离线数据包之间的映射关系:接收服务器发送的多个页面资源,所述页面资源用于在离线状态下响应页面加载请求;确定不同的所述页面资源对应的页面所记载业务的业务类型;根据所述业务类型,将接收到的多个页面资源进行分组,得到不同组的离线数据包,所述离线数据包中包含业务类型相同的业务所对应的页面的页面资源;建立业务类型与包含所述业务类型所对应的页面的页面资源的离线数据包之间的映射关系。6.根据权利要求5所述的页面加载方法,其特征在于,在得到所述业务类型对应的离线数据包时,所述方法还包括:确定所述离线数据包的物理存储空间;根据所述物理存储空间,为所述离线数据包中不同页面的页面资源分配物理存储地址;按照所述物理存储地址存储所述页面资源,并建立所述页面资源对应页面的逻辑地址与所述物理存储地址之间的映射关系。7.根据权利要求1所述页面加载方法,其特征在于,从查找到的所述离线数据包中获取加载所述待加载页面所需要的页面资源,包括:判断查找到的所述离线数据包中是否包含待加载页面所需要的超文本标记语言HTML文件和静态资源文件;若包含HTML文件和静态资源文件,则从查找到的所述离线数据包中获取加载所述待加载页面所需要的HTML文件和静态资源文件;若包含HTML文件但不包含静态资源文件,则查找到的所述离线数据包中获取加载所述待加载页面所需要的HTML文件,并向服务器发送静态资源获取请求,以从所述服务器中获取所述待加载页面所需要的静态资源文件。8.根据权利要求1或7所述的页面加载方法,其特征在于,利用所述页面资源执行页面渲染操作以完成页面加载,包括:解析所述页面资源中的超文本标记语言HTML文件,并调用异步线程以解析所述页面资源中的静态资源文件;在解析得到HTML代码和静态资源时,同步加载所述HTML代码和所述静态资源。9.根据权利要求1至7任一项所述的页面加载方法,其特征在于,所述方法还包括:接收所述服务器发送的增量数据包,所述增量数据包中包含HTML页面的页面类型;利用所述增量数据包,对所述页面类型对应的离线数据包进行更新。10.根据权利要求1所述的页面加载方法,其特征在于,确定所述页面加载请求中包含的待加载页面所记载业务的业务类型,包括:解析所述页面记载请求;确定所述待加载页面所记载业务的业务类型以及所述待加载页面的逻辑地址。11.根据权利要求1或10所述的页面加载方法,其特征在于,所述业务类型包含机票...

【专利技术属性】
技术研发人员:杨成旭
申请(专利权)人:阿里巴巴集团控股有限公司
类型:发明
国别省市:开曼群岛,KY

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

1