CN112434233B - 一种用于加快次级页面首屏渲染的方法与设备 - Google Patents

一种用于加快次级页面首屏渲染的方法与设备 Download PDF

Info

Publication number
CN112434233B
CN112434233B CN202010107004.5A CN202010107004A CN112434233B CN 112434233 B CN112434233 B CN 112434233B CN 202010107004 A CN202010107004 A CN 202010107004A CN 112434233 B CN112434233 B CN 112434233B
Authority
CN
China
Prior art keywords
page
secondary page
data
screen
screen rendering
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.)
Active
Application number
CN202010107004.5A
Other languages
English (en)
Other versions
CN112434233A (zh
Inventor
黄春华
江让
樊执政
徐炎骏
余黎明
许全会
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Shanghai Bilibili Technology Co Ltd
Original Assignee
Shanghai Bilibili Technology Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Shanghai Bilibili Technology Co Ltd filed Critical Shanghai Bilibili Technology Co Ltd
Priority to CN202010107004.5A priority Critical patent/CN112434233B/zh
Publication of CN112434233A publication Critical patent/CN112434233A/zh
Application granted granted Critical
Publication of CN112434233B publication Critical patent/CN112434233B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/95Retrieval from the web
    • G06F16/957Browsing optimisation, e.g. caching or content distillation
    • G06F16/9577Optimising the visualization of content, e.g. distillation of HTML documents
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/95Retrieval from the web
    • G06F16/958Organisation or management of web site content, e.g. publishing, maintaining pages or automatic linking

Landscapes

  • Engineering & Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Data Mining & Analysis (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

本申请的目的是提供一种用于加快次级页面首屏渲染的方法与设备,与现有技术相比,首先,客户端向服务器发送上级页面数据请求后,接收所述服务器基于所述上级页面数据请求返回的上级页面数据、以及该上级页面的次级页面对应的首屏渲染数据,接着,当通过所述上级页面访问所述次级页面,所述上级页面向所述次级页面传输所述次级页面对应的首屏渲染数据,最后,基于所述次级页面对应的首屏渲染数据对该次级页面进行首屏渲染。通过该方法在客户端预备页面数据的同时可以同时预备次级页面首屏渲染数据,有利于加快次级页面首屏渲染速度,在网络质量不好的情况下能减少用户浏览次级页面首屏的等待时间,提升用户浏览次级页面的使用体验,带来有益效果。

Description

一种用于加快次级页面首屏渲染的方法与设备
技术领域
本申请涉及网页页面数据处理技术领域,尤其涉及一种用于加快次级页面首屏渲染的技术。
背景技术
现有技术中,通常通过预备页面技术实现对客户端网页页面的渲染加速,通过对和本页面相关的软硬件环境进行预准备,以帮助页面更早的进入准备完成阶段,来加快上级页面的渲染。而次级页面的首屏渲染所需的的所有数据仍然是次级页面的首屏渲染触发后通过向服务器发送次级页面的首屏渲染数据请求,在服务器返回数据之后才能进行,渲染完成的速度除了服务器因素外,主要依赖客户端设备与服务器之间的网络质量。在网络质量好的情况下,通常需要100~200ms可以完成次级页面的首屏渲染,但在网络质量不好的情况下,向服务器发送请求及服务器返回数据这个过程所需时间会变长,客户端设备一直处于网页的次级页面首屏白屏状态,非常影响用户使用体验。
发明内容
本申请的目的是提供一种用于加快次级页面首屏渲染的方法和设备,以解决现有技术中如何加快次级页面首屏渲染的技术问题。。
根据本申请的一个方面,提供了一种在客户端用于加快次级页面首屏渲染的方法,其中,所述方法包括:
当向服务器发送上级页面数据请求后,接收所述服务器基于所述上级页面数据请求返回的上级页面数据、以及该上级页面的次级页面对应的首屏渲染数据,其中,所述次级页面对应的首屏渲染数据保存在该上级页面数据的内存缓存中;
当通过所述上级页面访问所述次级页面,所述上级页面向所述次级页面传输所述次级页面对应的首屏渲染数据;
基于所述次级页面对应的首屏渲染数据对所述次级页面进行首屏渲染。
可选地,所述方法还包括:
当所述次级页面对应的首屏渲染数据无法实现对该次级页面的全部渲染,向所述服务器发送次级页面数据请求,以请求除所述次级页面对应的首屏渲染数据外的其他渲染数据,以实现对所述次级页面的全部渲染。
可选地,在基于所述次级页面对应的首屏渲染数据对该次级页面进行首屏渲染期间,向所述服务器发送次级页面数据请求。
可选地,在所述基于所述次级页面对应的首屏渲染数据对所述次级页面进行首屏渲染之前,所述方法还包括:
校验所述次级页面对应的首屏渲染数据的合法性;
其中,所述基于所述次级页面对应的首屏渲染数据对所述次级页面进行首屏渲染包括:
当所述次级页面对应的首屏渲染数据合法,基于所述次级页面对应的首屏渲染数据对该次级页面进行首屏渲染。
可选地,所述次级页面对应的首屏渲染数据至少满足以下任一条件:
与时效无关的数据或者即使与时效有关但即使失效也不会与用户的实际利益相违背的相关数据;
所包含字段不能有超过预设数目字符的文本数据。
可选地,在所述当向服务器发送上级页面数据请求后,接收所述服务器基于所述上级页面数据请求返回的上级页面数据、以及该上级页面的次级页面对应的首屏渲染数据之前,所述方法还包括:
向所述服务器发送页面集合请求,其中,所述页面集合中包含需要加快页面首屏渲染的次级页面;
接收所述服务器基于所述页面集合请求返回的页面集合;
其中,所述当通过所述上级页面访问所述次级页面,所述上级页面向所述次级页面传输所述次级页面对应的首屏渲染数据包括:
当通过所述上级页面访问所述次级页面,且所述次级页面在所述页面集合中,所述上级页面向所述次级页面传输所述次级页面对应的首屏渲染数据。
根据本申请的另一方面,还提供了一种在服务器端用于加快次级页面首屏渲染的方法,其中,所述方法包括:
当接收到客户端发送的上级页面数据请求,基于所述上级页面数据请求向所述客户端发送上级页面数据、以及该上级页面的次级页面对应的首屏渲染数据,以使所述次级页面通过所述上级页面获取的该次级页面对应的首屏渲染数据来实现该次级页面的首屏渲染。
可选地,所述方法还包括:
当所述次级页面对应的首屏渲染数据无法实现对该次级页面的全部渲染,接收所述客户端发送的次级页面数据请求;
基于所述次级页面数据请求,向所述客户端发送除所述次级页面对应的首屏渲染数据外的其他渲染数据,以使所述客户端实现对所述次级页面的全部渲染。
可选地,所述方法还包括:
接收所述客户端发送的页面集合请求,其中,所述页面集合中包含需要加快页面首屏渲染的次级页面;
基于所述页面集合请求向所述客户端发送页面集合,以使所述页面集合内的次级页面通过所述上级页面获取的该次级页面对应的首屏渲染数据来实现该次级页面的首屏渲染。
与现有技术相比,本申请的目的是提供一种用于加快次级页面首屏渲染的方法与设备,首先,客户端设备网页应用客户端向服务器发送上级页面数据请求后,接收所述服务器基于所述上级页面数据请求返回的上级页面数据、以及该上级页面的次级页面对应的首屏渲染数据,接着,当通过所述上级页面访问所述次级页面,所述上级页面向所述次级页面传输所述次级页面对应的首屏渲染数据,最后,基于所述次级页面对应的首屏渲染数据对该次级页面进行首屏渲染。通过该方法在客户端预备上级页面数据的同时可以同时预备次级页面首屏渲染数据,有利于加快次级页面首屏渲染速度,在网络质量不好的情况下能减少用户浏览次级页面首屏的等待时间,提升用户浏览次级页面的使用体验,带来有益效果。
附图说明
通过阅读参照以下附图所作的对非限制性实施例所作的详细描述,本发明的其它特征、目的和优点将会变得更明显:
图1示出根据本申请一个方面的一种用于加快次级页面首屏渲染的系统示意图;
图2示出根据本申请一个方面的一种在客户端用于加快次级页面首屏渲染的方法流程图;
图3示出根据本申请一个方面的一种在服务器端用于加快次级页面首屏渲染的方法流程图;
图4示出根据本申请一个方面的一个可选实施例一种在服务器端用于加快次级页面首屏渲染的方法流程图;
图5示出根据本申请一个方面的另一个可选实施例一种在服务器端用于加快次级页面首屏渲染的方法流程图;
图6示出根据本申请另一个方面的一种用于加快次级页面首屏渲染的方法流程图。
附图中相同或相似的附图标记代表相同或相似的部件。
具体实施方式
下面结合附图对本发明作进一步详细描述。
在本申请一个典型的配置中,系统各模块和可信方均包括一个或多个处理器(CPU)、输入/输出接口、网络接口和内存。
内存可能包括计算机可读介质中的非永久性存储器,随机存取存储器(RAM)和/或非易失性内存等形式,如只读存储器(ROM)或闪存(FlashRAM)。内存是计算机可读介质的示例。
计算机可读介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存(PRAM)、静态随机存取存储器(SRAM)、动态随机存取存储器(DRAM)、其他类型的随机存取存储器(RAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、快闪记忆体或其他内存技术、只读光盘只读存储器(CD-ROM)、数字多功能光盘(DVD)或其他光学存储、磁盒式磁带,磁带磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。按照本文中的界定,计算机可读介质不包括非暂存电脑可读媒体(Transitory Media),如调制的数据信号和载波。
为更进一步阐述本申请所采取的技术手段及取得的效果,下面结合附图及优选实施例,对本申请的技术方案,进行清楚和完整的描述。
图1示出根据本申请一个方面的一种用于加快次级页面首屏渲染的系统示意图,该系统包括了客户端设备110和服务器120,客户端设备110与服务器120之间通过网络实现数据传输。在实际应用场景中,所述客户端设备是各类支持网页应用的用户终端,包括但不限于智能手机、个人计算机、笔记本电脑、工业计算机等。所述服务器为计算机设备和/或云,所述计算机设备包括但不限于个人计算机、网络主机、单个网络服务器、多个网络服务器集;所述云由基于云计算(Cloud Computing)的大量计算机或网络服务器构成,其中,云计算是分布式计算的一种,由一群松散耦合的计算机集组成的一个虚拟超级计算机。
在此,所述客户端设备和服务器仅为举例,其他现有的或者今后可能出现的设备如适用于本申请也应包含在本申请的保护范围内,在此,以引用的方式包含于此。
该系统能够用于加快次级页面首屏渲染。
图2示出根据本申请一个方面的一种在客户端用于加快次级页面首屏渲染的方法流程图,其中,所述方法包括:
S21当向服务器发送上级页面数据请求后,接收所述服务器基于所述上级页面数据请求返回的上级页面数据、以及该上级页面的次级页面对应的首屏渲染数据,其中,所述次级页面对应的首屏渲染数据保存在该上级页面数据的内存缓存中;
S22当通过所述上级页面访问所述次级页面,所述上级页面向所述次级页面传输所述次级页面对应的首屏渲染数据;
S23基于所述次级页面对应的首屏渲染数据对所述次级页面进行首屏渲染。
上述方法通过在获取上级页面数据的同时获取次级页面首屏渲染数据,上级页面通过给次级页面透传首屏渲染所需要数据,使次级页面在渲染首屏时不需要发起相关接口请求,就可以渲染首屏,加快次级页面首屏渲染。
在本申请中,所述方法通过客户端设备110执行。
在该实施例中,当客户端设备110启动网页应用客户端执行所述步骤S21时,网页应用客户端访问上级页面,向服务器120发出上级页面数据请求,所述服务器120根据请求整理上级页面数据,并根据上级页面数据整理该上级页面的次级页面对应的首屏渲染数据,然后将所述上级页面数据和所述次级页面的首屏渲染数据发送给客户端。
其中,客户端设备110将所述次级页面的首屏渲染数据与所述上级页面数据存放在同一存储区域,都存放在所述上级页面数据的内存缓存中,以便于网页应用客户端在访问上级页面的次级页面时快速传输次级页面的首屏渲染数据。
当网页应用客户端接收到所述上级页面数据和所述次级页面数据的首屏渲染数据,加载上级页面,实现上级页面的渲染。
上级页面的数据加载方式不做限定,可以是常规加载方式,即当网页应用客户端加载上级页面时,向服务器120发出上级页面数据请求,请求上级页面全部数据,服务器120整理好上级页面全部数据和该上级页面的次级页面对应的首屏渲染数据,然后将所述上级页面全部数据和所述次级页面的首屏渲染数据发送给网页应用客户端,加载上级页面,实现上级页面的渲染。
上级页面的数据加载方式还可以是懒加载方式,即当网页应用客户端加载上级页面时,只向服务器120发出上级页面首屏数据请求,请求上级页面首屏数据,服务器120整理好上级页面首屏数据和该上级页面首屏的次级页面对应的首屏渲染数据,然后将所述上级页面首屏数据和所述次级页面的首屏渲染数据发送给网页应用客户端,加载上级页面的首屏数据,实现上级页面的首屏渲染;当用户浏览上级页面除首屏外的屏幕时,网页应用客户端再向服务器发出上级页面的当前屏数据请求,请求上级页面的当前屏数据,服务器120整理好上级页面的当前屏数据和该上级页面的当前屏的次级页面对应的首屏渲染数据,然后将所述上级页面的当前屏数据和当前屏的次级页面对应的首屏渲染数据发送给网页应用客户端,加载上级页面的当前屏数据,实现上级页面的当前屏渲染。
上级页面数据的懒加载方式相对于常规加载方式,在上级页面首屏加载、渲染时接收的数据量更少,在网络质量不好或不是很稳定情况下,可以提升用户体验。
继续在该实施例中,在所述步骤S22中,所述当通过所述上级页面访问所述次级页面,所述上级页面向所述次级页面传输所述次级页面对应的首屏渲染数据。
当用户触发上级页面中某一个次级页面时,基于页面间通信,该上级页面将存放在同一内存缓存中的该次级页面的首屏渲染数据传输给该次级页面,该次级页面的首屏渲染进程在进入该次级页面的时候直接进行。
其中,所述页面通信是指网页应用客户端的页面间通信,例如,上级页面通过网页应用客户端Native层的JSBridge,将次级页面首屏渲染数据透明传输给次级页面,该次级页面的首屏渲染进程可以在进入该次级页面的时候直接进行,最大程度地减少次级页面首屏渲染数据对网络质量的依赖。
在此,所述页面间通信包括但不限于网页应用客户端Native层的JSBridge,其他现有的或者今后可能出现的页面间通信方法如适用于本申请也应包含在本申请的保护范围内。
继续在该实施例中,在所述步骤S23中,所述基于所述次级页面对应的首屏渲染数据对所述次级页面进行首屏渲染。
可选地,所述方法还包括:
当所述次级页面对应的首屏渲染数据无法实现对该次级页面的全部渲染,向所述服务器发送次级页面数据请求,以请求除所述次级页面对应的首屏渲染数据外的其他渲染数据,以实现对所述次级页面的全部渲染。
其中,当所述次级页面对应的首屏渲染数据无法实现对该次级页面的全部渲染时,网页应用客户端向服务器120发起次级页面数据请求,以请求服务器120返回除所述次级页面对应的首屏渲染数据外的所述次级页面全部渲染的其它数据,以实现对所述次级页面的全部渲染。
通过上述方法可提升用户浏览次级页面全部内容时的体验。
可选地,在基于所述次级页面对应的首屏渲染数据对该次级页面进行首屏渲染期间,向所述服务器发送次级页面数据请求。
其中,网页应用客户端向服务器120发起次级页面数据请求,以请求服务器120返回除所述次级页面对应的首屏渲染数据外的所述次级页面全部渲染的其它数据,以实现对所述次级页面的全部渲染,是在基于所述次级页面对应的首屏渲染数据对该次级页面进行首屏渲染期间进行的。避免用户在浏览次级页面其它屏时等待接收数据。
可选地,在所述步骤S23之前,所述方法还包括:
校验所述次级页面对应的首屏渲染数据的合法性;
其中,所述步骤S23包括:
当所述次级页面对应的首屏渲染数据合法,基于所述次级页面对应的首屏渲染数据对该次级页面进行首屏渲染。
具体地,在所述次级页面接收到上级页面通过网页应用客户端Native层的JSBridge透明传输的次级页面的首屏渲染数据后,在对所述次级页面的首屏进行渲染之前,对所述次级页面的首屏渲染数据的合法性进行校验,在确认所述次级页面的首屏渲染数据的合法性后,对所述次级页面的首屏进行渲染。
其中,校验所述次级页面对应的首屏渲染数据的合法性,包括:
对所述次级页面对应的首屏渲染数据的完整性进行校验,确认是否存在任何字段和数据的遗漏;
对所述次级页面对应的首屏渲染数据的数据类型进行校验,确认每个字段所对应的字段数据类型是否与预设的字段数据类型一致。
对次级页面首屏数据合法性验证可提升数据处理效率。
可选地,所述次级页面对应的首屏渲染数据至少满足以下任一条件:
与时效无关的数据或者即使与时效有关但即使失效也不会与用户的实际利益相违背的相关数据;
所包含字段不能有超过预设数目字符的文本数据。
其中,为了不明显增加服务器120向网页应用客户端发送的数据量,不明显影响上级页面的加载,所述次级页面对应的首屏渲染数据限定为次级页面首屏数据中的与时效无关的数据或者即使与时效有关但即使失效也不会与用户的实际利益相违背的相关数据。
其中,所述与时效无关的数据或者即使与时效有关但即使失效也不会与用户的实际利益相违背的相关数据包括非时效性字段和非大数据类型字段的数据,其中非时效性字段是指字段数据一般不会随着时间改变,例如产品名称、功能特点等;所述大数据类型字段数据,通常指base64格式的图片数据。
另外,所述次级页面对应的首屏渲染数据所包含字段不能有超过预设数目字符的文本数据,以确保不明显影响上级页面的加载。
只有符合条件的首屏渲染数据才能通过所述方法实现加快次级页面首屏渲染。
可选地,所述次级页面对应的首屏渲染数据不包括图像渲染数据。
其中,图像渲染与页面渲染采用不同的数据处理方式,本申请所述次级页面对应的首屏渲染数据不包含图像渲染数据。
在网页中,图像处理方法与数据处理不同,通过本方法可以提升次级页面首屏数据内容渲染速度,但无法提升其中图像的渲染速度。
可选地,在所述步骤S21之前,所述方法还包括:
向所述服务器发送页面集合请求,其中,所述页面集合中包含需要加快页面首屏渲染的次级页面;
接收所述服务器基于所述页面集合请求返回的页面集合;
其中,所述步骤S22包括:
当通过所述上级页面访问所述次级页面,且所述次级页面在所述页面集合中,所述上级页面向所述次级页面传输所述次级页面对应的首屏渲染数据。
其中,当网页应用客户端访问上级页面时,向服务器120发送页面集合请求,服务器120向客户端返回页面集合,所述页面集合中包含需要加快页面首屏渲染的次级页面的地址的集合。
其中,所述需要加快页面首屏渲染的次级页面的地址可以唯一指向所述需要加快页面首屏渲染的次级页面,地址包括“域名”和需要加快页面首屏渲染的次级页面的“页面路径”,例如“mall.bilibili.com”和“/index.html”。
其中,当网页应用客户端要访问上级页面中某一个次级页面时,先在页面集合中搜索所述次级页面对应的地址,如果能搜索和所述次级页面的地址相同的地址,那么基于页面间通信,该上级页面将存放在同一内存缓存中的该次级页面的首屏渲染数据传输给该次级页面,该次级页面的首屏渲染进程在进入该次级页面的时候直接进行。
其中,所述页面集合还可以直接在客户端的代码中写好,节省了向服务器请求页面集合的步骤,但是也会带来不便:如果调整加快页面首屏渲染的次级的页面集合,则需要升级客户端。
通过页面集合使得客户端收到上级页面数据的同时接受次级页面首屏数据,避免次级页面首屏渲染时受网络影响。
图3示出根据本申请另一个方面的一种在服务器端用于加快次级页面首屏渲染的方法流程图,其中,所述方法包括:
S32当接收到客户端发送的上级页面数据请求,基于所述上级页面数据请求向所述客户端发送上级页面数据、以及该上级页面的次级页面对应的首屏渲染数据,以使所述次级页面通过所述上级页面获取的该次级页面对应的首屏渲染数据来实现该次级页面的首屏渲染。
在本申请中,所述方法通过服务器120执行。
在该实施例中,当服务器120接收到客户端设备110网页应用客户端发送的上级页面数据请求,根据请求整理上级页面数据,并根据上级页面数据整理该上级页面的次级页面对应的首屏渲染数据,然后向所述客户端设备110发送上级页面数据,以及该上级页面数据的次级页面对应的首屏渲染数据。
期中,根据客户端设备110网页应用客户端的页面数据加载方式不同,向所述客户端设备110发送的上级页面数据可以是上级页面全部数据,发送的该上级页面数据的次级页面对应的首屏渲染数据包括上级页面的所有次级页面对应的首屏渲染数据,也可以是上级页面首屏数据,相应地,发送的该上级页面数据的次级页面对应的首屏渲染数据包括仅包括该上级页面首屏能访问的次级页面对应的首屏渲染数据。
服务器在获取上级页面数据请求后整理也获取次级页面首屏渲染数据请求,同时发送给客户端,使次级页面在渲染首屏时不需要再发起相关接口请求,就可以渲染首屏,加快次级页面首屏渲染。
可选地,如图4所示,所述方法还包括:
S33当所述次级页面对应的首屏渲染数据无法实现对该次级页面的全部渲染,接收所述客户端发送的次级页面数据请求;
S34基于所述次级页面数据请求,向所述客户端发送除所述次级页面对应的首屏渲染数据外的其他渲染数据,以使所述客户端实现对所述次级页面的全部渲染。
其中,当所述次级页面对应的首屏渲染数据无法实现对该次级页面的全部渲染时,服务器120基于客户端设备110网页应用客户端的请求,向网页应用客户端发送除所述次级页面对应的首屏渲染数据外的所述次级页面全部渲染的其它数据,以使所述网页应用客户端实现对所述次级页面的全部渲染。可提升用户浏览次级页面全部内容时的体验。
可选地,如图5所示,所述方法还包括:
S30接收所述客户端发送的页面集合请求,其中,所述页面集合中包含需要加快页面首屏渲染的次级页面;
S31基于所述页面集合请求向所述客户端发送页面集合,以使所述页面集合内的次级页面通过所述上级页面获取的该次级页面对应的首屏渲染数据来实现该次级页面的首屏渲染。
其中,服务器120基于客户端设备110网页应用客户端的请求,向网页应用客户端发送页面集合,所述页面集合中包含需要加快页面首屏渲染的次级页面的地址的集合。
其中,所述需要加快页面首屏渲染的次级页面的地址可以唯一指向所述需要加快页面首屏渲染的次级页面,地址包括“域名”和需要加快页面首屏渲染的次级页面的“页面路径”,例如“mall.bilibili.com”和“/index.html”。
通过页面集合使得客户端收到上级页面数据的同时接受次级页面首屏数据,避免次级页面首屏渲染时受网络影响。
根据本申请的又一方面,还提供了一种计算机可读介质,所述计算机可读介质存储有计算机可读指令,所述计算机可读指令可被处理器执行以实现前述方法。
图6示出根据本申请另一个方面的一种用于加快次级页面首屏渲染的方法流程图,包括以下步骤:
S601发送页面集合请求。
当客户端设备110启动网页应用客户端,向服务器120发出页面集合请求。
S602返回页面集合。
服务器120根据所述页面集合请求返回页面集合,其中,所述页面集合中包含需要加快页面首屏渲染的次级页面的地址的集合,其中,所述需要加快页面首屏渲染的次级页面的地址可以唯一指向所述需要加快页面首屏渲染的次级页面,地址包括“域名”和需要加快页面首屏渲染的次级页面的“页面路径”,例如“mall.bilibili.com”和“/index.html”。
当客户端设备110网页应用客户端要访问上级页面中某一个次级页面时,先在接收到的页面集合中搜索所述次级页面对应的地址,如果能搜索和所述次级页面的地址相同的地址,继续后续处理步骤,否则,向服务器120发送次级页面数据请求。
S603发送上级页面数据请求。
当客户端设备110的网页应用客户端要访问上级页面时,向服务器120发送上级页面数据请求。
S604整理上级页面数据,并根据上级页面数据整理该上级页面的次级页面对应的首屏渲染数据。
服务器120根据接收到所述上级页面数据请求整理出上级页面数据,并根据整理出的上级页面数据整理处该上级页面的次级页面对应的首屏渲染数据。
其中,所述次级页面对应的首屏渲染数据与次级页面首屏渲染内容有关,对服务器120返回的所述次级页面对应的首屏渲染数据格式只要求能被次级页面解析即可,不做具体限定。
例如,假设次级页面A接收到某一服务a的数据是
{
“data”:“你好”
}
该次级页面A和该服务a基于预先设计好的开发规则,只要解析data字段所对应的数据,则该次级页面A可以正确渲染该服务a。
假设次级页面B接收到某一服务b的数据是
{
“dataSource”:“hello”
}
如果该次级页面B和该服务b约定好只要解析dataSource字段所对应的数据就可以,则该次级页面B可以正确渲染该服务b。
但是次级页面B无法解析服务a的数据,次级页面A也无法解析服务b的数据。
S605返回上级页面数据、以及该上级页面的次级页面对应的首屏渲染数据。
服务器120向客户端设备110返回上级页面数据、以及该上级页面的次级页面对应的首屏渲染数据。
S606访问上级页面中的次级页面。
客户端设备110网页应用客户端触发上级页面中的次级页面链接,访问所述次级页面。
S607检测所述次级页面的地址是否在所述页面集合中。
网页应用客户端检测所述次级页面的地址是否包含在页面集合中,若包含在所述页面集合中,继续步骤S608,若所述次级页面的地址不在所述页面集合中,则向服务器120发送次级页面数据请求。
S608若所述次级页面的地址在所述页面集合中,传输次级页面首屏渲染数据给次级页面。
其中,基于页面间通信,上级页面将存放在同一内存缓存中的次级页面的首屏渲染数据传输给次级页面。其中,所述页面通信是指应用客户端的页面间通信,例如,上级页面通过应用客户端Native层的JSBridge,将次级页面首屏渲染数据透明传输给次级页面。
S609检验接收到的次级页面首屏数据的合法性,确认合法后对所述次级页面进行首屏渲染。
其中,校验所述次级页面对应的首屏渲染数据的合法性,包括:
对所述次级页面对应的首屏渲染数据的完整性进行校验,确认是否存在任何字段和数据的遗漏;
对所述次级页面对应的首屏渲染数据的数据类型进行校验,确认每个字段所对应的字段数据类型是否与预设的字段数据类型一致。
S610发送次级页面数据请求。
其中,通常次级页面除了首屏外,还有其它屏内容。当所述次级页面对应的首屏渲染数据无法实现对该次级页面的全部渲染时,应用客户端向服务器端发起次级页面数据请求,以请求服务器120返回除所述次级页面对应的首屏渲染数据外的所述次级页面全部渲染的其它数据,以实现对所述次级页面的全部渲染。
S611返回次级页面数据。
服务器120返回除所述次级页面对应的首屏渲染数据外的所述次级页面全部渲染的其它数据。
S612次级页面全部渲染。
应用客户端接收到除所述次级页面对应的首屏渲染数据外的所述次级页面全部渲染的其它数据,以实现对所述次级页面的全部渲染。
根据本申请的又一方面,还提供了一种用于加快次级页面首屏渲染的客户端设备,其中,该设备包括:
一个或多个处理器;以及
存储有计算机可读指令的存储器,所述计算机可读指令在被执行时使所述处理器执行如前述方法的操作。
例如,计算机可读指令在被执行时使所述一个或多个处理器:
向服务器发送上级页面数据请求,接收所述服务器返回的上级页面数据、以及该上级页面的次级页面对应的首屏渲染数据;通过所述上级页面访问所述次级页面,所述上级页面向所述次级页面传输所述次级页面对应的首屏渲染数据;基于所述次级页面对应的首屏渲染数据对所述次级页面进行首屏渲染。
根据本申请的又一方面,还提供了一种用于加快次级页面首屏渲染的服务器端设备,其中,该设备包括:
一个或多个处理器;以及
存储有计算机可读指令的存储器,所述计算机可读指令在被执行时使所述处理器执行如前述方法的操作。
例如,计算机可读指令在被执行时使所述一个或多个处理器:
接收到客户端发送的上级页面数据请求,基于所述上级页面数据请求向所述客户端发送上级页面数据、以及该上级页面的次级页面对应的首屏渲染数据,以使所述次级页面通过所述上级页面获取的该次级页面对应的首屏渲染数据来实现该次级页面的首屏渲染。
对于本领域技术人员而言,显然本发明不限于上述示范性实施例的细节,而且在不背离本发明的精神或基本特征的情况下,能够以其他的具体形式实现本发明。因此,无论从哪一点来看,均应将实施例看作是示范性的,而且是非限制性的,本发明的范围由所附权利要求而不是上述说明限定,因此旨在将落在权利要求的等同要件的含义和范围内的所有变化涵括在本发明内。不应将权利要求中的任何附图标记视为限制所涉及的权利要求。此外,显然“包括”一词不排除其他单元或步骤,单数不排除复数。装置权利要求中陈述的多个单元或装置也可以由一个单元或装置通过软件或者硬件来实现。第一,第二等词语用来表示名称,而并不表示任何特定的顺序。

Claims (10)

1.一种在客户端用于加快次级页面首屏渲染的方法,其特征在于,所述方法包括:
当向服务器发送上级页面数据请求后,接收所述服务器基于所述上级页面数据请求返回的上级页面数据、以及该上级页面的次级页面对应的首屏渲染数据,其中,所述上级页面数据为所述服务器根据所述上级页面数据请求整理得到,所述次级页面对应的首屏渲染数据为所述服务器根据所述上级页面数据整理得到,所述次级页面对应的首屏渲染数据保存在该上级页面数据的内存缓存中;
当通过所述上级页面访问所述次级页面,所述上级页面向所述次级页面传输所述次级页面对应的首屏渲染数据;
基于所述次级页面对应的首屏渲染数据对所述次级页面进行首屏渲染。
2.根据权利要求1所述的方法,其特征在于,所述方法还包括:
当所述次级页面对应的首屏渲染数据无法实现对该次级页面的全部渲染,向所述服务器发送次级页面数据请求,以请求除所述次级页面对应的首屏渲染数据外的其他渲染数据,以实现对所述次级页面的全部渲染。
3.根据权利要求2所述的方法,其特征在于,在基于所述次级页面对应的首屏渲染数据对该次级页面进行首屏渲染期间,向所述服务器发送次级页面数据请求。
4.根据权利要求1至3中任一项所述的方法,其特征在于,在所述基于所述次级页面对应的首屏渲染数据对所述次级页面进行首屏渲染之前,所述方法还包括:
校验所述次级页面对应的首屏渲染数据的合法性;
其中,所述基于所述次级页面对应的首屏渲染数据对所述次级页面进行首屏渲染包括:
当所述次级页面对应的首屏渲染数据合法,基于所述次级页面对应的首屏渲染数据对该次级页面进行首屏渲染。
5.根据权利要求1至3中任一项所述的方法,其特征在于,所述次级页面对应的首屏渲染数据至少满足以下任一条件:
与时效无关的数据或者即使与时效有关但即使失效也不会与用户的实际利益相违背的相关数据;
所包含字段不能有超过预设数目字符的文本数据。
6.根据权利要求1至3中任一项所述的方法,其特征在于,所述次级页面对应的首屏渲染数据不包括图像渲染数据。
7.根据权利要求1至3中任一项所述的方法,其特征在于,在所述当向服务器发送上级页面数据请求后,接收所述服务器基于所述上级页面数据请求返回的上级页面数据、以及该上级页面的次级页面对应的首屏渲染数据之前,所述方法还包括:
向所述服务器发送页面集合请求,其中,所述页面集合中包含需要加快页面首屏渲染的次级页面;
接收所述服务器基于所述页面集合请求返回的页面集合;
其中,所述当通过所述上级页面访问所述次级页面,所述上级页面向所述次级页面传输所述次级页面对应的首屏渲染数据包括:
当通过所述上级页面访问所述次级页面,且所述次级页面在所述页面集合中,所述上级页面向所述次级页面传输所述次级页面对应的首屏渲染数据。
8.一种在服务器端用于加快次级页面首屏渲染的方法,其特征在于,所述方法包括:
当接收到客户端发送的上级页面数据请求,基于所述上级页面数据请求整理上级页面数据,并根据所述上级页面数据整理该上级页面的次级页面对应的首屏渲染数据,向所述客户端发送所述上级页面数据、以及所述次级页面对应的首屏渲染数据,以使所述次级页面通过所述上级页面获取的该次级页面对应的首屏渲染数据来实现该次级页面的首屏渲染。
9.根据权利要求8所述的方法,其特征在于,所述方法还包括:
当所述次级页面对应的首屏渲染数据无法实现对该次级页面的全部渲染,接收所述客户端发送的次级页面数据请求;
基于所述次级页面数据请求,向所述客户端发送除所述次级页面对应的首屏渲染数据外的其他渲染数据,以使所述客户端实现对所述次级页面的全部渲染。
10.根据权利要求8或9所述的方法,其特征在于,所述方法还包括:
接收所述客户端发送的页面集合请求,其中,所述页面集合中包含需要加快页面首屏渲染的次级页面;
基于所述页面集合请求向所述客户端发送页面集合,以使所述页面集合内的次级页面通过所述上级页面获取的该次级页面对应的首屏渲染数据来实现该次级页面的首屏渲染。
CN202010107004.5A 2020-02-20 2020-02-20 一种用于加快次级页面首屏渲染的方法与设备 Active CN112434233B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202010107004.5A CN112434233B (zh) 2020-02-20 2020-02-20 一种用于加快次级页面首屏渲染的方法与设备

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010107004.5A CN112434233B (zh) 2020-02-20 2020-02-20 一种用于加快次级页面首屏渲染的方法与设备

Publications (2)

Publication Number Publication Date
CN112434233A CN112434233A (zh) 2021-03-02
CN112434233B true CN112434233B (zh) 2023-03-07

Family

ID=74689815

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010107004.5A Active CN112434233B (zh) 2020-02-20 2020-02-20 一种用于加快次级页面首屏渲染的方法与设备

Country Status (1)

Country Link
CN (1) CN112434233B (zh)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114237781A (zh) * 2021-10-25 2022-03-25 北京三快在线科技有限公司 页面加载的方法、装置、设备及存储介质

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108959487A (zh) * 2018-06-22 2018-12-07 福建南威软件有限公司 一种基于h5端的页面处理方法
CN109213952A (zh) * 2018-08-02 2019-01-15 平安科技(深圳)有限公司 页面访问处理方法、装置、计算机设备及存储介质
CN110020304A (zh) * 2017-11-29 2019-07-16 北京京东尚科信息技术有限公司 一种加载页面的方法和装置
CN110263275A (zh) * 2019-06-14 2019-09-20 深圳前海桔子信息技术有限公司 一种访问网页的方法、装置、移动终端和存储介质
CN110795649A (zh) * 2019-09-18 2020-02-14 北京你财富计算机科技有限公司 目标页面展示方法、装置、系统及电子设备

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20040168122A1 (en) * 2003-02-21 2004-08-26 Kobipalayam Murugaiyan Senthil Nathan System, method and computer readable medium for transferring and rendering a web page
US20180032491A1 (en) * 2016-07-26 2018-02-01 Google Inc. Web page display systems and methods

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110020304A (zh) * 2017-11-29 2019-07-16 北京京东尚科信息技术有限公司 一种加载页面的方法和装置
CN108959487A (zh) * 2018-06-22 2018-12-07 福建南威软件有限公司 一种基于h5端的页面处理方法
CN109213952A (zh) * 2018-08-02 2019-01-15 平安科技(深圳)有限公司 页面访问处理方法、装置、计算机设备及存储介质
CN110263275A (zh) * 2019-06-14 2019-09-20 深圳前海桔子信息技术有限公司 一种访问网页的方法、装置、移动终端和存储介质
CN110795649A (zh) * 2019-09-18 2020-02-14 北京你财富计算机科技有限公司 目标页面展示方法、装置、系统及电子设备

Also Published As

Publication number Publication date
CN112434233A (zh) 2021-03-02

Similar Documents

Publication Publication Date Title
US10356156B2 (en) Method and device for loading webpage
US9923977B2 (en) Transferring cookie data to another domain
CN102413151B (zh) 分享网络资源的方法及系统
CN106919634B (zh) 跨应用共享数据的方法及网页浏览器
CN110300133B (zh) 跨域数据传输方法、装置、设备及存储介质
CN108769189B (zh) 跨网络域资源的访问方法及设备
CN110020305B (zh) 网页加载方法、装置、计算机设备和存储介质
US11093705B2 (en) Apparatus and method of verifying simultaneous edit match for markup language-based document
CN109495553A (zh) 一种网页显示控制方法、系统及反向代理服务器
CN109656670B (zh) 一种页面渲染方法及装置
CN111259283B (zh) 一种页面资源预加载的处理方法及装置,电子和存储设备
CN112434233B (zh) 一种用于加快次级页面首屏渲染的方法与设备
US11477158B2 (en) Method and apparatus for advertisement anti-blocking
CN112926002A (zh) 一种服务请求的处理方法及装置
US11438403B2 (en) Page presentation method and system, computer system, and computer readable medium
US20140331117A1 (en) Application-based dependency graph
CN116595047A (zh) 权限管理方法、装置、电子设备及计算机可读存储介质
CN111783010A (zh) 网页空白页面监测方法、装置、终端及存储介质
CN113448649B (zh) 一种基于Redis的首页数据加载的服务器及方法
US10965781B2 (en) Method and server for displaying access content
CN113626741A (zh) 一种移动客户端网页加载的方法及设备
CN111639290B (zh) 一种对线上渠道金融产品访问的处理方法及装置
CN114116763A (zh) 信息处理方法、装置、电子设备及存储介质
CN114065068A (zh) 一种页面访问控制方法及装置、设备、存储介质
CN111723315A (zh) 辅助阅读及显示方法、装置、计算设备

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant