CN112016014B - 网页显示、网页资源生成方法、装置、电子设备及介质 - Google Patents
网页显示、网页资源生成方法、装置、电子设备及介质 Download PDFInfo
- Publication number
- CN112016014B CN112016014B CN202010832850.3A CN202010832850A CN112016014B CN 112016014 B CN112016014 B CN 112016014B CN 202010832850 A CN202010832850 A CN 202010832850A CN 112016014 B CN112016014 B CN 112016014B
- Authority
- CN
- China
- Prior art keywords
- webpage
- resource
- data
- web page
- web
- 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
Links
- 238000000034 method Methods 0.000 title claims abstract description 110
- 230000003068 static effect Effects 0.000 claims description 153
- 230000008569 process Effects 0.000 claims description 45
- 238000000605 extraction Methods 0.000 claims description 18
- 238000009877 rendering Methods 0.000 description 33
- 230000015572 biosynthetic process Effects 0.000 description 10
- 238000003786 synthesis reaction Methods 0.000 description 10
- 238000012423 maintenance Methods 0.000 description 8
- 238000010276 construction Methods 0.000 description 7
- 238000010586 diagram Methods 0.000 description 7
- 238000004590 computer program Methods 0.000 description 6
- 238000011161 development Methods 0.000 description 5
- 230000006870 function Effects 0.000 description 5
- 230000002194 synthesizing effect Effects 0.000 description 5
- 230000005540 biological transmission Effects 0.000 description 4
- 230000000694 effects Effects 0.000 description 3
- 238000005516 engineering process Methods 0.000 description 3
- 230000004044 response Effects 0.000 description 3
- 230000006978 adaptation Effects 0.000 description 2
- 238000013500 data storage Methods 0.000 description 2
- 230000003993 interaction Effects 0.000 description 2
- 230000007246 mechanism Effects 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 238000012545 processing Methods 0.000 description 2
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000008846 dynamic interplay Effects 0.000 description 1
- 238000010295 mobile communication Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
- 230000000007 visual effect Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/95—Retrieval from the web
- G06F16/958—Organisation or management of web site content, e.g. publishing, maintaining pages or automatic linking
- G06F16/986—Document structures and storage, e.g. HTML extensions
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/95—Retrieval from the web
- G06F16/955—Retrieval from the web using information identifiers, e.g. uniform resource locators [URL]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/95—Retrieval from the web
- G06F16/957—Browsing optimisation, e.g. caching or content distillation
- G06F16/9574—Browsing optimisation, e.g. caching or content distillation of access to content, e.g. by caching
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
技术领域
本公开涉及信息技术领域,尤其涉及网页显示、网页资源生成方法、装置、电子设备及介质。
背景技术
相关技术中,一个网站中不同网页的多个组件的主题风格相同,通常将相同的内容抽象出来,形成通用框架,以及个性化内容分别独立维护,这样可以减少网页开发的重复工作,以及降低维护成本。
具体的,当用户端请求网页资源数据时,服务端将通用框架网页内容与当前网页个性化内容进行组合后,形成完整的网页资源数据,下发给用户端,用户端可以直接根据网页资源数据,生成网页。
但在上述方式中,在通用框架网页内容更新,而当前网页个性化内容未更新,服务端不会获取更新后的通用框架网页内容,导致客户端获取的网页资源数据中通用框架网页内容没有更新,从而导致网页更新效率低。
发明内容
本公开提供一种网页显示、网页资源生成方法、装置、电子设备及介质,以至少解决相关技术中由服务端执行将网页的通用框架内容和个性化内容的组合操作,导致客户端的网页更新效率低的问题。本公开的技术方案如下:
根据本公开实施例的第一方面,提供一种网页显示方法,包括:
在接收到目标网页的访问操作时,从所述访问操作中提取第一网页资源地址,获取在所述第一网页资源地址处存储的第一网页资源数据;
从所述第一网页资源数据中提取第一配置数据,并生成第一网页配置信息树,所述第一网页配置信息树用于通过树形结构的网页元素表示第一配置数据;
从所述第一网页资源数据中提取第二网页资源地址,并根据所述第二网页资源地址获取在所述第二网页资源地址处存储的第二网页资源数据;
从所述第二网页资源数据中提取第二配置数据,并添加到所述第一网页配置信息树中,生成第二网页配置信息树,所述第二网页配置信息树用于通过树形结构的网页元素表示所述第一配置数据和所述第二配置数据;
将所述第二网页配置信息树中包括的网页元素进行页面布局和绘制,生成并显示所述目标网页。
可选的,所述从所述第一网页资源数据中提取第二网页资源地址,包括:
在所述第一配置信息树构建的过程中,执行所述第一网页资源数据包括的第一脚本语言文件;
通过所述第一脚本语言文件,执行第二网页资源地址的获取操作,获取所述第一网页资源数据包括的第二网页资源地址。
可选的,所述第二配置数据为多个网页的配置数据和所述目标网页的配置数据中相同的配置数据,所述第一配置数据为多个网页的配置数据和所述目标网页的配置数据中不同的配置数据。
可选的,所述从所述第二网页资源数据中提取第二配置数据,并添加到所述第一网页配置信息树中,生成第二网页配置信息树,包括:
从所述第二网页资源数据中提取网页元素,并生成对应的节点;
根据各所述网页元素之间的嵌套关系,将各所述网页元素对应的节点添加到所述第一配置信息树中匹配的位置处,所述第一配置信息树中包括多个节点,所述节点用于表示网页元素,所述节点之间的连接关系用于表示各所述网页元素的嵌套关系;
在所述第二网页资源数据中全部网页元素对应的节点添加完成时,将当前时刻的第一配置信息树作为第二配置信息树。
可选的,所述获取在所述第一网页资源地址处存储的第一网页资源数据,包括:
根据所述第一网页资源地址中的协议信息和第一资源标识信息,构建第一资源获取请求;
将所述第一资源获取请求发送至第一静态资源服务器,所述第一静态资源服务器与所述第一网页资源地址中的主机标识信息匹配;
接收所述第一静态资源服务器反馈的第一网页资源数据,所述第一网页资源数据通过所述第一静态资源服务器根据所述第一资源标识信息查询获取;
所述根据所述第二网页资源地址获取在所述第二网页资源地址处存储的第二网页资源数据,包括:
根据所述第二网页资源地址中的协议信息和第二资源标识信息,构建第二资源获取请求;
将所述第二资源获取请求发送至第二静态资源服务器,所述第二静态资源服务器与所述第二网页资源地址中的主机标识信息匹配;
接收所述第二静态资源服务器反馈的第二网页资源数据,所述第二网页资源数据通过所述第二静态资源服务器根据所述第二资源标识信息查询获取。
可选的,在将所述第二网页配置信息树中包括的网页元素进行页面布局和绘制的同时,还包括:
通过所述第二网页资源数据包括的第二脚本语言文件,将所述第一网页资源数据包括的未加载文件加载到内存中。
可选的,所述第一配置数据包括表单内容配置信息,所述第二配置数据包括下述至少一项:菜单配置信息、页头配置信息、侧边栏配置信息和页尾配置信息。
可选的,所述从所述第一网页资源数据中提取第一配置数据,包括:
从所述第一网页资源数据包括的超文本标记语言文件中提取第一配置数据。
根据本公开实施例的第二方面,提供一种网页资源生成方法,包括:
获取至少两个网页的配置数据;
从各所述配置数据中获取相同的配置数据,生成第一网页资源数据,并获取所述第一网页资源数据的第一网页资源地址,所述第一网页资源数据用于表示各所述网页中相同的配置数据;
根据各所述配置数据中不同的配置数据,以及所述第一网页资源地址,生成各所述网页匹配的第二网页资源数据,所述第二网页资源数据用于表示各所述网页中不同的配置数据;
其中,所述第一网页资源数据和各所述第二网页资源数据用于分别发送至客户端,以指示所述客户端根据所述第一网页资源数据和目标第二网页资源数据,生成目标网页,所述目标第二网页资源数据为与所述目标网页匹配的第二网页资源数据。
可选的,所述第一网页资源数据和所述目标第二网页资源数据用于指示所述客户端从所述第一网页资源数据提取第一配置数据,并生成第一网页配置信息树,同时从所述目标第二网页资源数据提取第二配置数据,并添加到所述第一网页配置信息树中,生成第二网页配置信息树,以及将所述第二网页配置信息树中包括的网页元素进行页面布局和绘制,生成所述目标网页,所述第一网页配置信息树用于通过树形结构的网页元素表示所述第一配置数据,所述第二网页配置信息树用于通过树形结构的网页元素表示所述第一配置数据和所述第二配置数据。
可选的,在生成所述第二网页资源数据之后,还包括:
将所述第一网页资源数据发送至第一静态资源服务器,所述第一静态资源服务器用于存储所述第一网页资源数据,以及将所述第一网页资源数据发送至所述客户端;
将各第二网页资源数据发送至第二静态资源服务器,所述第二静态资源服务器用于存储各所述第二网页资源数据,以及将所述第二网页资源数据发送至所述客户端。
可选的,在将各第二网页资源数据发送至第二静态资源服务器之后,还包括:
将所述第一网页资源数据的更新数据发送至所述第一静态资源服务器,以指示所述第一静态资源服务器更新所述第一网页资源数据;
将各所述第二网页资源数据的更新数据发送至所述第二静态资源服务器,以指示所述第二静态资源服务器更新各所述第二网页资源数据。
根据本公开实施例的第三方面,提供一种网页显示装置,包括:
第一网页资源数据获取单元,被配置为执行在接收到目标网页的访问操作时,从所述访问操作中提取第一网页资源地址,获取在所述第一网页资源地址处存储的第一网页资源数据;
第一网页配置信息树生成单元,被配置为执行从所述第一网页资源数据中提取第一配置数据,并生成第一网页配置信息树,所述第一网页配置信息树用于通过树形结构的网页元素表示第一配置数据;
第二网页资源数据获取单元,被配置为执行从所述第一网页资源数据中提取第二网页资源地址,并根据所述第二网页资源地址获取在所述第二网页资源地址处存储的第二网页资源数据;
第二网页配置信息树生成单元,被配置为执行从所述第二网页资源数据中提取第二配置数据,并添加到所述第一网页配置信息树中,生成第二网页配置信息树,所述第二网页配置信息树用于通过树形结构的网页元素表示所述第一配置数据和所述第二配置数据;
目标网页显示单元,被配置为执行将所述第二网页配置信息树中包括的网页元素进行页面布局和绘制,生成并显示所述目标网页。
可选的,所述第一网页配置信息树生成单元,包括:
第一脚本语言文件执行子单元,被配置为执行在所述第一配置信息树构建的过程中,执行所述第一网页资源数据包括的第一脚本语言文件;
第二网页资源地址获取子单元,被配置为执行通过所述第一脚本语言文件,执行第二网页资源地址的获取操作,获取所述第一网页资源数据包括的第二网页资源地址。
可选的,所述第二配置数据为多个网页的配置数据和所述目标网页的配置数据中相同的配置数据,所述第一配置数据为多个网页的配置数据和所述目标网页的配置数据中不同的配置数据。
可选的,所述第二网页配置信息树生成单元,包括:
网页元素提取子单元,被配置为执行从所述第二网页资源数据中提取网页元素,并生成对应的节点;
网页元素添加子单元,被配置为执行根据各所述网页元素之间的嵌套关系,将各所述网页元素对应的节点添加到所述第一配置信息树中匹配的位置处,所述第一配置信息树中包括多个节点,所述节点用于表示网页元素,所述节点之间的连接关系用于表示各所述网页元素的嵌套关系;
第二配置信息树生成子单元,被配置为执行在所述第二网页资源数据中全部网页元素对应的节点添加完成时,将当前时刻的第一配置信息树作为第二配置信息树。
可选的,所述第一网页资源数据获取单元,包括:
第一资源获取请求生成子单元,被配置为执行根据所述第一网页资源地址中的协议信息和第一资源标识信息,构建第一资源获取请求;
第一资源获取请求发送子单元,被配置为执行将所述第一资源获取请求发送至第一静态资源服务器,所述第一静态资源服务器与所述第一网页资源地址中的主机标识信息匹配;
第一网页资源数据接收子单元,被配置为执行接收所述第一静态资源服务器反馈的第一网页资源数据,所述第一网页资源数据通过所述第一静态资源服务器根据所述第一资源标识信息查询获取;
所述第二网页资源数据获取单元,包括:
第二资源获取请求生成子单元,被配置为执行根据所述第二网页资源地址中的协议信息和第二资源标识信息,构建第二资源获取请求;
第二资源获取请求发送子单元,被配置为执行将所述第二资源获取请求发送至第二静态资源服务器,所述第二静态资源服务器与所述第二网页资源地址中的主机标识信息匹配;
第二网页资源数据接收子单元,被配置为执行接收所述第二静态资源服务器反馈的第二网页资源数据,所述第二网页资源数据通过所述第二静态资源服务器根据所述第二资源标识信息查询获取。
可选的,所述网页显示装置,还包括:
初始化单元,被配置为执行在将所述第二网页配置信息树中包括的网页元素进行页面布局和绘制的同时,通过所述第二网页资源数据包括的第二脚本语言文件,将所述第一网页资源数据包括的未加载文件加载到内存中。
可选的,所述第一配置数据包括表单内容配置信息,所述第二配置数据包括下述至少一项:菜单配置信息、页头配置信息、侧边栏配置信息和页尾配置信息。
可选的,所述第一网页配置信息树生成单元,包括:
超文本标记语言文件查询子单元,被配置为执行从所述第一网页资源数据包括的超文本标记语言文件中提取第一配置数据。
根据本公开实施例的第四方面,提供一种网页资源生成装置,包括:
网页配置信息获取单元,被配置为执行获取至少两个网页的配置数据;
相同配置信息获取单元,被配置为执行从各所述配置数据中获取相同的配置数据,生成第一网页资源数据,并获取所述第一网页资源数据的第一网页资源地址,所述第一网页资源数据用于表示各所述网页中相同的配置数据;
不同配置信息获取单元,被配置为执行根据各所述配置数据中不同的配置数据,以及所述第一网页资源地址,生成各所述网页匹配的第二网页资源数据,所述第二网页资源数据用于表示各所述网页中不同的配置数据;其中,所述第一网页资源数据和各所述第二网页资源数据用于分别发送至客户端,以指示所述客户端根据所述第一网页资源数据和目标第二网页资源数据,生成目标网页,所述目标第二网页资源数据为与所述目标网页匹配的第二网页资源数据。
可选的,所述第一网页资源数据和所述目标第二网页资源数据用于指示所述客户端从所述第一网页资源数据提取第一配置数据,并生成第一网页配置信息树,同时从所述目标第二网页资源数据提取第二配置数据,并添加到所述第一网页配置信息树中,生成第二网页配置信息树,以及将所述第二网页配置信息树中包括的网页元素进行页面布局和绘制,生成所述目标网页,所述第一网页配置信息树用于通过树形结构的网页元素表示所述第一配置数据,所述第二网页配置信息树用于通过树形结构的网页元素表示所述第一配置数据和所述第二配置数据。
可选的,所述网页资源生成装置还包括:
第一网页资源数据静态存储单元,被配置为执行在生成所述第二网页资源数据之后,将所述第一网页资源数据发送至第一静态资源服务器,所述第一静态资源服务器用于存储所述第一网页资源数据,以及将所述第一网页资源数据发送至所述客户端;
第二网页资源数据静态存储单元,被配置为执行将各第二网页资源数据发送至第二静态资源服务器,所述第二静态资源服务器用于存储各所述第二网页资源数据,以及将所述第二网页资源数据发送至所述客户端。
可选的,所述网页资源生成装置还包括:
第一网页资源数据更新单元,被配置为执行在将各第二网页资源数据发送至第二静态资源服务器之后,将所述第一网页资源数据的更新数据发送至所述第一静态资源服务器,以指示所述第一静态资源服务器更新所述第一网页资源数据;
第二网页资源数据更新单元,被配置为执行将各所述第二网页资源数据的更新数据发送至所述第二静态资源服务器,以指示所述第二静态资源服务器更新各所述第二网页资源数据。
根据本公开实施例的第五方面,提供一种电子设备,包括:处理器;用于存储所述处理器可执行指令的存储器;其中,所述处理器被配置为执行所述指令,以实现如本公开任一实施例所述的网页显示方法或者如本公开任一实施例所述的网页资源生成方法。
根据本公开实施例的第六方面,提供一种存储介质,所述存储介质中的指令由电子设备的处理器执行时,使得电子设备能够执行如本公开任一实施例所述的网页显示方法或者如本公开任一实施例所述的网页资源生成方法。
根据本公开实施例的第七方面,提供一种计算机程序产品,用于与电子设备结合使用,所述计算机程序产品包括计算机可读存储介质和内嵌于其中的计算机程序机制,经由计算机载入该程序并执行后能够实现如本公开任一实施例所述的网页显示方法或者如本公开任一实施例所述的网页资源生成方法。
本公开的实施例提供的技术方案至少带来以下有益效果:
通过获取目标网页对应的第一网页资源数据,提取第一配置数据,生成第一网页配置信息树,以及获取目标网页对应的第二网页资源数据,提取第二配置数据并添加到在第一网页配置信息树中,形成第二网页配置信息树,将第二网页配置信息树包括的网页元素进行布局和绘制,生成并显示目标网页,实现在客户端组合通用框架网页内容与目标网页个性化内容,可以在目标网页的访问过程中获取最新的网页资源数据,解决了在服务端执行网页的通用框架内容和个性化内容的合成操作,导致客户端获取的网页资源数据中通用框架网页内容没有更新,从而导致网页更新效率低的问题,可以在目标网页访问过程中,实时获取最新的通用框架内容和最新的个性化内容,及时更新目标网页中的内容,提高目标网页的更新效率。
应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本公开。
附图说明
此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本公开的实施例,并与说明书一起用于解释本公开的原理,并不构成对本公开的不当限定。
图1是根据一示例性实施例示出的一种网页显示方法的流程图;
图2是根据一示例性实施例示出的一种第一网页配置信息树的示意图。
图3是根据一示例性实施例示出的一种第二网页配置信息树的示意图。
图4是根据一示例性实施例示出的一种网页显示方法的流程图。
图5是根据一示例性实施例示出的一种网页显示方法的流程图。
图6是根据一示例性实施例示出的一种网页显示方法的流程图。
图7是根据一示例性实施例示出的一种网页资源生成方法的流程图。
图8是根据一示例性实施例示出的一种网页显示装置的框图。
图9是根据一示例性实施例示出的一种网页资源生成装置的框图。
图10是根据一示例性实施例示出的一种电子设备的框图。
具体实施方式
为了使本领域普通人员更好地理解本公开的技术方案,下面将结合附图,对本公开实施例中的技术方案进行清楚、完整地描述。
需要说明的是,本公开的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本公开的实施例能够以除了在这里图示或描述的那些以外的顺序实施。以下示例性实施例中所描述的实施方式并不代表与本公开相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本公开的一些方面相一致的装置和方法的例子。
在用户访问网页的过程中,浏览器向服务器发起请求,接收服务器返回的网页资源,并将网页资源加载到窗口中,显示网页。其中,网页资源包括超文本标记语言(HyperText Markup Language,HTML)文件、层叠样式表(Cascading Style Sheets,CSS)和脚本语言(JavaScript)代码。其中,HTML文件是网页内容的载体,通常是由标签组成。CSS用于描述网页元素的样式和布局,例如标题元素的字体、颜色、尺寸和标题背景图像等,其中,CSS可以包括独立的文件和/或嵌入在HTML文件中的代码。JavaScript文件用于实现用户与网页的动态交互操作,例如,鼠标点击配置项图标,配置项图标弹出下拉菜单等。
其中,网页渲染过程可以是:对HTML文件进行解析,生成文档对象模型树(Document Object Model Tree,DOM Tree);对CSS进行解析,生成CSS对象模型树(CSSObject Model Tree,CSSOM Tree),其中,DOM Tree的结构与CSSOM Tree的结构对应;根据DOM Tree的结构与CSSOM Tree的结构的对应关系,对DOM Tree和CSSOM Tree进行合成,形成渲染树;计算渲染树中各节点的布局信息;根据渲染树中各节点的布局信息,对渲染树中各节点进行绘制,生成至少一个图层,各图层用于按照设定顺序合成,生成图像,在浏览器窗口中进行显示,形成一个完整的网页效果。
其中,对HTML文件进行解析,得到多个HTML元素。整个文档是一个文档节点,作为树结构的根节点,各HTML元素作为元素节点,各HTML元素的文本作为文本节点,HTML元素的属性作为属性节点,根据各节点之间的关系,将各节点进行连接,生成DOM Tree,Tree是一种树形的数据结构。
DOM Tree的结构与CSSOM Tree的结构对应,CSSOM Tree包括多个样式规则节点,CSSOM Tree中的节点关系与DOM Tree中的节点关系相同,CSSOM Tree中的样式规则节点的内容可以是DOM Tree中与之匹配的节点的样式规则。
JavaScript代码可以是可执行的代码。在网页渲染过程中,将脚本语言代码形成脚本语言文件加载到内存中执行,在脚本语言文件执行过程中会堵塞网页的渲染过程。脚本语言文件在执行过程中可以通过DOM应用程序编程接口(Application ProgrammingInterface,API)对DOM Tree进行操作,以及通过CSSOM API对CSSOM Tree进行操作,操作可以包括添加、删除和修改等操作。此外脚本语言文件还可以对网页中生成的事件进行响应。
对HTML文件的解析过程中,遇到CSS,则对CSS进行解析,遇到JavaScript代码,则解析成JavaScript文件并执行。实际上,DOM Tree的构建过程与CSSOM Tree的构建过程同时进行,在出现堵塞渲染的情况下,如执行JavaScript文件,DOM Tree的构建过程和CSSOMTree的构建过程暂停。
获取DOM Tree中待渲染的节点,其中,待渲染的节点通常是可视化元素,并在CSSOM Tree中获取与待渲染节点匹配的样式规则节点,附加到待渲染节点中,生成新的树结构作为渲染树。实际上,DOM Tree、CSSOM Tree和渲染树可以同时构建。
在一个网站中,通常设置不同网页具备统一的风格,即各网页之间存在相同内容,同时还存在不同内容,由此将各网页之间的相同内容作为一个网页资源数据进行独立维护,并将不同各网页之间的不同内容分别作为一个网页资源数据进行独立维护。从而,将两个网页资源数据均加载到浏览器窗口中,形成一个完整的网页。本公开实施例通过在浏览器中对两个网页资源数据进行合成渲染,形成一个完整的网页并显示。
图1是根据一示例性实施例示出的一种网页显示方法的流程图,如图1所示,网页显示方法用于电子设备中,由配置于电子设备中的浏览器来执行,包括以下步骤。
在步骤S11中,在接收到目标网页的访问操作时,从所述访问操作中提取第一网页资源地址,获取在所述第一网页资源地址处存储的第一网页资源数据。
其中,目标网页可以是待展示的网页。网页可以是从网络上下载资源并加载到浏览器窗口中形成的页面。访问操作用于获取目标网页的资源数据并在浏览器中进行显示。访问操作可以是用户输入的操作,可以通过多种方式输入,例如,文本输入方式,具体是用户在浏览器中的地址栏中输入网址,或者用户在浏览器中的搜索栏中输入关键词;又如,语音输入方式,具体是采集用户发出的语音,并识别为文本信息,作为网址或者关键词;又如,图像输入方式,具体是拍摄二维码,并识别为文本信息,作为网址或者关键词;又如,超链接触发方法,具体是,对指向目标网页的超链接进行点击触发等。
第一网页资源地址用于获取第一网页资源数据,可以是第一网页资源数据在网络中的位置。示例性的,第一网页资源地址包括统一资源定位符(Uniform ResourceLocator,URL)。其中,根据访问操作中的第一网页资源地址,获取第一网页资源数据的过程可以是:根据第一网页资源地址生成资源获取请求;获取第一网页资源地址包括的域名;通过本地查询或者向域名服务器请求,获取域名匹配的网际协议(Internet Protocol,IP)地址;向IP地址指向的第一静态资源服务器发送资源获取请求,并接收第一静态资源服务器返回的第一网页资源数据。其中,第一静态资源服务器中存储有第一网页资源数据。通过第一网页资源地址,浏览器可以获取第一静态资源服务器中存储的第一网页资源数据。
在步骤S12中,从所述第一网页资源数据中提取第一配置数据,并生成第一网页配置信息树,所述第一网页配置信息树用于通过树形结构的网页元素表示第一配置数据。
第一配置数据用于描述目标网页中网页元素的属性信息,例如,网页元素的内容、样式和布局等属性信息中的至少一项。网页配置信息树可以是指DOM Tree。网页元素可以是指HTML元素。可以根据第一配置数据生成网页元素,示例性的,第一配置数据包括的每个标签分别生成网页元素。网页配置信息树包括连接网页元素构成的树形结构的数据,此外,网页配置信息树还可以包括网页元素的文本或网页元素的属性等信息,文本或属性是对应的网页元素的子节点。在网页配置信息树中,连接的网页元素可以表达配置数据中的网页内容、各内容的结构以及各内容的属性等。
其中,第一网页资源数据至少包括超文本标记语言文件。可选的,从所述第一网页资源数据中提取第一配置数据,包括:从所述第一网页资源数据包括的超文本标记语言文件中提取第一配置数据。
其中,第一配置数据包括超文本标记语言文件中的全部标签,即HTML标签。从超文本标记语言文件中提取第一配置数据,实际是对超文本标记语言文件进行解析,获取每个标签对应的内容。本公开实施例通过将配置数据配置于超文本标记语言文件中,可以在超文本标记语言文件解析时,快速准确获取配置数据。
第一网页资源数据可以包括第一超文本标记语言文件。其中,层叠样式表和脚本语言代码可以以代码形式嵌入在超文本标记语言文件中,或者存储在独立文件中,形成第一层叠样式表文件和第一脚本语言文件。由此,第一网页资源数据还可以包括第一层叠样式表和第一脚本语言代码(嵌入在第一超文本标记语言文件中),和/或第一网页资源数据还可以包括第一层叠样式表文件和第一脚本语言文件。第一层叠样式表文件中存储有层叠样式表,第一脚本语言文件中存储有脚本语言代码。如果层叠样式表存储在独立文件中形成层叠样式表文件,在超文本标记语言文件中存在指向该层叠样式表文件的代码,用于在超文本标记语言文件进行解析时,获取层叠样式表文件并加载,相应的,如果脚本语言代码存储在独立文件中形成脚本语言文件,在超文本标记语言文件中存在指向该脚本语言文件的代码,用于在超文本标记语言文件进行解析时,获取脚本语言文件并加载执行。具体的,第一超文本标记语言文件用于构建第一DOM Tree,确定为网页配置信息树;第一层叠样式表用于构建第一CSSOM Tree,第一超文本标记语言文件和第一层叠样式表用于共同配合构建第一渲染树。
在步骤S13中,从所述第一网页资源数据中提取第二网页资源地址,并根据所述第二网页资源地址获取在所述第二网页资源地址处存储的第二网页资源数据。
第一网页资源数据用于确定第二网页资源地址,可选的,第一网页资源数据中包括第二网页资源地址,从而,可以在第一网页资源数据中查询第二网页资源地址;或者第一网页资源数据中包括第二网页资源地址的关联信息,例如,关联信息包括第一网页资源地址与第二网页资源地址的对应关系,从而,根据该对应关系确定第二网页资源地址。
具体的,第一网页资源数据中配置有第二网页资源地址,可以在对第一网页资源数据进行解析时,直接获取第二网页资源地址。第二网页资源数据存储在第二网页资源地址处。
通常,第一网页资源地址和第二网页资源地址不同,表明第一网页资源数据和第二网页资源数据的内容不同,具体的,第一网页资源数据的维护事件与第二网页资源数据的维护事件相互独立,第一网页资源数据的发布事件与第二网页资源数据的发布事件相互独立。获取第二网页资源数据的过程,与获取第一网页资源数据的过程相同。第二静态资源服务器中存储有第二网页资源数据。通过第二网页资源地址,浏览器可以获取第二静态资源服务器中存储的第二网页资源数据。其中,第一静态资源服务器和第二静态资源服务器可以相同,也可以不同。实际上,第一网页资源数据和第二网页资源数据可以存储在相同的静态资源服务器中,但在同一静态资源服务器中的存储位置不同。
根据第二网页资源地址,获取第二网页资源数据的过程与根据第一网页资源地址,获取第一网页资源数据的过程相同。实际上,形成目标网页的网页资源数据是由两部分构成:第一网页资源数据和第二网页资源数据,将第一网页资源数据和第二网页资源数据进行合成,可以得到完整的网页资源数据。其中,第二网页资源数据可以是用于生成多个网页的网页资源数据中相同的网页资源数据,第一网页资源数据可以是每个网页区别于其他网页的网页资源数据,即不同网页的第一网页资源数据不同,不同网页的第二网页资源数据相同。
在本公开实施例的一个实施方式中,可选的,所述第一配置数据包括表单内容配置信息,所述第二配置数据包括下述至少一项:菜单配置信息、页头配置信息、侧边栏配置信息和页尾配置信息。
表单内容配置信息、菜单配置信息、页头配置信息、侧边栏配置信息和页尾配置信息分别用于在文档对象模型树中生成匹配的元素节点,并生成匹配的元素节点存在连接关系文本节点和属性节点,以及在层叠样式表对象模型树中生成匹配的样式规则节点等中的至少一项。例如,表单内容配置信息用于生成表单元素节点,菜单配置信息用于生成菜单元素节点,页头配置信息用于生成页头元素节点,侧边栏配置信息用于生成侧边栏元素节点,页尾配置信息用于生成侧边栏元素节点等。
通常,同一风格的多个网页中,菜单、页头、侧边栏和页尾等网页元素的文本和/或属性相同,由此,可以将相同的数据从网页资源数据中提取,形成第二网页资源数据,并将网页资源数据中剩余的数据,形成第一网页资源数据,通常剩余的数据为不同网页中不同的数据。例如,不同网页中的表单的文本和/或属性相同不同,可以将表单的文本和/或属性作为一个网页区别于其他网页的数据,形成第一网页资源数据。
通过将第一网页资源数据具体化为表单内容配置信息,并将第二网页资源数据具体化为菜单配置信息、页头配置信息、侧边栏配置信息和页尾配置信息等中的至少一项,可以将多个网页的相同数据形成通用的第二网页资源数据进行维护和发布,并将不同网页的不同数据形成匹配的第一网页资源数据进行维护和发布,同时第二网页资源数据和第一网页资源数据相互独立,可以减少针对每个网页分别更新第二网页资源数据的操作量,降低通用的第二网页资源数据的维护成本,可以在通用的第二网页资源数据更新时,实时更新多个网页,加快网页更新速度,提高网页的更新实时性。
在步骤S14中,从所述第二网页资源数据中提取第二配置数据,并添加到所述第一网页配置信息树中,生成第二网页配置信息树,所述第二网页配置信息树用于通过树形结构的网页元素表示所述第一配置数据和所述第二配置数据。
从第二网页资源数据中提取第二配置数据的过程与从第一网页资源数据中提取第一配置数据的过程相同。第二网页资源数据包括第二超文本标记语言文件。从第二网页资源数据包括的第二超文本标记语言文件中提取第二配置数据。
将第二配置数据添加到第一网页配置信息树中,实际是对第二配置数据进行解析,生成对应的网页元素,并将网页元素添加到第一网页配置信息树中,形成第二网页配置信息树。由此,第二网页配置信息树包括表达第一配置数据的网页元素,以及表达第二配置数据的网页元素,从而实现第一网页资源数据和第二网页资源数据组合的效果。
示例性的,第一网页配置信息树的结构如图2所示,第二超文本标记语言文件用于在网页中添加菜单控件,相应形成的第二网页配置信息树的结构如图3所示。
可选的,所述从所述第二网页资源数据中提取第二配置数据,并添加到所述第一网页配置信息树中,生成第二网页配置信息树,包括:从所述第二网页资源数据中提取网页元素,并生成对应的节点;根据各所述网页元素之间的嵌套关系,将各所述网页元素对应的节点添加到所述第一配置信息树中匹配的位置处,所述第一配置信息树中包括多个节点,所述节点用于表示网页元素,所述节点之间的连接关系用于表示各所述网页元素的嵌套关系;在所述第二网页资源数据中全部网页元素对应的节点添加完成时,将当前时刻的第一配置信息树作为第二配置信息树。
配置信息树中数据以节点形式存在。节点可以包括元素节点、文本节点和属性节点等。从第二网页资源数据中提取网页元素,并生成对应的节点,此外,还可以从第二网页资源数据中提取网页元素的信息,并生成对应的节点。具体的,从第二网页资源数据中检测标签,并将标签内容按照网页元素,网页元素的文本以及网页元素的属性等信息进行划分,每个信息可以对应生成一个节点。
在配置信息树中,节点之间的连接关系可以表示网页元素的嵌套关系。根据节点之间的连接关系,将各节点添加到第一配置信息树上。不同标签存在嵌套关系,也即网页元素之间存在嵌套关系,将存在嵌套关系的网页元素对应生成的节点相连,以及将网页元素对应的节点,与第一配置信息树上存在嵌套关系的网页元素对应的节点相连,从而,将各节点添加到第一配置信息树中匹配的位置处。
示例性的,存在嵌套关系的标签内容如下所示:
<head>
<title>标题<title>
</head>
其中,标签<title>嵌套在标签<head>中。相应的,标签<title>对应的节点与标签<head>对应的节点相连。
第二网页资源数据中全部网页元素对应的节点添加完成,表明第二网页资源数据中内容全部加载完成,也即第二网页资源数据生成的节点全部添加到第一配置信息树中,同时表明第二配置信息树生成,从而可以将当前时刻的第一配置信息树确定为第二配置信息树。
通过从第二网页资源数据提取出网页元素,生成对应节点,并按照网页元素在第二网页资源数据中的嵌套关系,将节点与第一配置信息树中匹配的节点相连,以将节点添加到第一配置信息树中,并在节点添加完成时,将当前时刻的第一配置信息树作为第二配置信息树,可以准确将第二网页资源数据与第一网页资源数据组合,形成包括第二网页资源数据与第一网页资源数据的目标网页,可以在客户端中生成完整准确的目标网页,提高目标网页生成的准确率,同时在客户端进行网页资源数据组合,可以减少服务器的渲染压力,提高服务器的性能。
可选的,所述第二配置数据为多个网页的配置数据和所述目标网页的配置数据中相同的配置数据,所述第一配置数据为多个网页的配置数据和所述目标网页的配置数据中不同的配置数据。
目标网页以及其他至少一个网页存在相同数据以及不同的数据。该数据可以是页面内容,也可以是页面样式,还可以是页面的交互方式等等。第二配置数据为不同页面抽象出来的相同数据,第一配置数据为不同页面中除了相同数据之外的剩余数据,也即不同页面中不同数据。
通过将多个网页中相同数据配置为第二配置数据,并将多个网页中不同数据配置为第一配置数据,并分别从不同网页资源数据中提取,可以将多个网页的公共部分与不同部分进行分离开发,可以避免逐一开发和更新多个网页的公共部分,减少开发和更新的代码修改量,节省开发成,提高开发效率,以及网页的更新效率,
在步骤S15中,将所述第二网页配置信息树中包括的网页元素进行页面布局和绘制,生成并显示所述目标网页。
按照第二网页配置信息树,分别将全部网页元素进行页面布局和绘制,渲染目标网页,并显示在浏览器窗口中。具体的,在生成第二网页配置信息树的同时,相应生成对应的CSSOM Tree,第二网页配置信息树的结构与CSSOM Tree的结构对应;根据第二网页配置信息树的结构与CSSOM Tree的结构的对应关系,对第二网页配置信息树和CSSOM Tree进行合成,形成渲染树;计算渲染树中各节点的布局信息;根据渲染树中各节点的布局信息,对渲染树中各节点进行绘制,生成至少一个图层,各图层用于按照设定顺序合成,生成图像,加载到内存中,在浏览器窗口中进行显示,形成一个完整的网页效果。
需要说明的是,在生成第一网页配置信息树的同时,同样相应生成对应CSSOMTree和渲染树。由于对第一网页配置信息树进行修改,之前生成的CSSOM Tree会相应修改,或者重新生成。例如,在对第二超文本标记语言文件的解析过程中,解析到第二层叠样式表,将第二层叠样式表关联的节点添加到第一层叠样式表对象模型树中,形成第二层叠样式表对象模型树。浏览器检测到文档对象模型树发生变化,重新构建渲染树,即根据第二文档对象模型树和第二层叠样式表对象模型树,生成新的渲染树,从而渲染树会根据第二网页配置信息树的结构和更新后的CSSOM Tree重新组合生成。
现有的服务器在本地将两个网页资源数据组合,并将组合后的数据下发给客户端,此时如果通用框架网页内容更新发布,而且网页个性化内容没有更新发布,则该服务器本地不会去拉取最新的通用框架网页内容,只有在网页个性化内容更新发布时,才会重新获取最新的网页个性化内容以及最新的通用框架网页内容,并进行组合,下发给客户端。也即更新发布的通用框架网页内容只有在网页个性化内容更新发布时,客户端才会显示更新发布的通用框架网页内容。
而本公开实施例通过客户端组合两个网页资源数据,任意客户端在访问网页时,都会去获取更新发布的内容,从而,可以在通用框架网页内容更新发布时,实时获取更新后的通用框架网页内容,并实时显示,从而提高通用框架网页内容更新显示速度。
本公开实施例的技术方案通过获取目标网页对应的第一网页资源数据,提取第一配置数据,生成第一网页配置信息树,以及获取目标网页对应的第二网页资源数据,提取第二配置数据并添加到在第一网页配置信息树中,形成第二网页配置信息树,将第二网页配置信息树包括的网页元素进行布局和绘制,生成并显示目标网页,实现在客户端组合通用框架网页内容与目标网页个性化内容,可以在目标网页的访问过程中获取最新的网页资源数据,解决了在服务端执行网页的通用框架内容和个性化内容的合成操作,导致客户端获取的网页资源数据中通用框架网页内容没有更新,从而导致网页更新效率低的问题,可以在目标网页访问过程中,实时获取最新的通用框架内容和最新的个性化内容,及时更新目标网页中的内容,提高目标网页的更新效率。
图4是根据一示例性实施例示出的一种网页显示方法的流程图,本实施例是对上述技术方案的进一步细化,本实施例中的技术方案可以与上述一个或者多个实施例中的各个可选方案结合。如图4所示,网页显示方法包括以下步骤。
在步骤S21中,在接收到目标网页的访问操作时,从所述访问操作中提取第一网页资源地址,获取在所述第一网页资源地址处存储的第一网页资源数据。
本实施例中未详尽的描述可以参考前述实施例。
在步骤S22中,从所述第一网页资源数据中提取第一配置数据,并生成第一网页配置信息树,所述第一网页配置信息树用于通过树形结构的网页元素表示第一配置数据。
在步骤S23中,在所述第一配置信息树构建的过程中,执行所述第一网页资源数据包括的第一脚本语言文件。
在步骤S24中,通过所述第一脚本语言文件,执行第二网页资源地址的获取操作,获取所述第一网页资源数据包括的第二网页资源地址,并根据所述第二网页资源地址获取在所述第二网页资源地址处存储的第二网页资源数据。
第一脚本语言文件用于在执行时获取第二网络资源地址,以及根据第二网络资源地址获取第二网页资源数据。第一脚本语言文件中包括用于获取第二网页资源地址的代码,当该代码被执行时,可以获取第二网页资源地址。
第一脚本语言文件在执行过程中,可以获取第二网页资源地址。第一脚本语言文件可以生成第二网页资源数据的获取任务,以指示浏览器根据第二网页资源地址获取第二网页资源数据。具体的,通过第一脚本语言文件调用浏览器的网络资源进程获取第二网页资源数据,以指示网络资源进程根据第二网页资源地址获取第二网页资源数据。
或者,第一脚本语言文件中配置有第二网络资源地址,可以在执行时,直接过去第二网页资源地址。
浏览器采用自上而下的方式对超文本标记语言文件进行加载,并在加载过程中同时进行文件解析,以及构建文档对象模型树和渲染树。在超文本标记语言文件加载过程,也即在渲染树的构建过程中,遇到脚本语言代码,暂停渲染树的构建过程,将脚本语言代码关联的脚本语言文件加载到内存中并执行,当脚本语言文件执行完成之后,返回继续渲染树的构建操作。具体的,在第一配置信息树构建的过程中,遇到第一脚本语言文件关联的代码,则加载第一脚本语言文件并执行。
通常,第一脚本语言文件关联的代码置于第一超文本标记语言文件的底部,例如,第一超文本标记语言文件中的body标签中的最后一行。在第一超文本标记语言文件中除第一脚本语言文件关联的代码之外的内容全部解析完成之后,再执行第一脚本语言文件,获取第二网页资源地址,以获取第二网页资源数据,可以包括第一超文本标记语言文件的全部网页内容的第一网页渲染结果进行调整,避免遗漏第一超文本标记语言文件的网页内容,提高第一网页渲染结果的完整性。
示例性的,如下所示,第一超文本标记语言文件包括:
<html>
<head>
<title>标题<title>
</head>
<body>
……(层叠样式表和其他脚本语言文件)
<script type="text/javascript"src="第一脚本语言文件的地址"></script>
</body>
</html>
其中,<script type="text/javascript"src="第一脚本语言文件的地址"></script>可以替换为:
<script type="text/javascript">
第一脚本语言文件代码
</script>
第一网页资源数据中还包括其他脚本语言代码和/或脚本语言文件,其他脚本语言代码和/或脚本语言文件的功能可以根据网页的功能进行配置,对此,本公开实施例不做具体限制。
在步骤S25中,从所述第二网页资源数据中提取第二配置数据,并添加到所述第一网页配置信息树中,生成第二网页配置信息树,所述第二网页配置信息树用于通过树形结构的网页元素表示所述第一配置数据和所述第二配置数据。
在步骤S26中,将所述第二网页配置信息树中包括的网页元素进行页面布局和绘制,生成并显示所述目标网页。
本公开实施例的技术方案通过根据第一超文本标记语言文件,构建第一网页配置信息树,并配置第一脚本语言文件实现获取第二网页资源地址,以获取第二网页资源数据,以及根据第二网页资源数据中的第二超文本标记语言文件,对第一网页配置信息树进行调整,生成第二网页配置信息树,可以在浏览器中对第一网页资源数据和第二网页资源数据进行合成,形成完整正确的目标网页,并正常显示和运行,同时可以实时获取最新第一网页资源数据和第二网页资源数据,并生成目标网页,提高更新目标网页的实时性。
图5是根据一示例性实施例示出的一种网页显示方法的流程图,本实施例是对上述技术方案的进一步细化,本实施例中的技术方案可以与上述一个或者多个实施例中的各个可选方案结合。如图5所示,网页显示方法包括以下步骤。
在步骤S31中,在接收到目标网页的访问操作时,从所述访问操作中提取第一网页资源地址,获取在所述第一网页资源地址处存储的第一网页资源数据。
本实施例中未详尽的描述可以参考前述实施例。
在步骤S32中,从所述第一网页资源数据中提取第一配置数据,并生成第一网页配置信息树,所述第一网页配置信息树用于通过树形结构的网页元素表示第一配置数据。
在步骤S33中,从所述第一网页资源数据中提取第二网页资源地址,并根据所述第二网页资源地址获取在所述第二网页资源地址处存储的第二网页资源数据。
在步骤S34中,从所述第二网页资源数据中提取第二配置数据,并添加到所述第一网页配置信息树中,生成第二网页配置信息树,所述第二网页配置信息树用于通过树形结构的网页元素表示所述第一配置数据和所述第二配置数据。
在步骤S35中,将所述第二网页配置信息树中包括的网页元素进行页面布局和绘制。
在步骤S36中,在将所述第二网页配置信息树中包括的网页元素进行页面布局和绘制的同时,通过所述第二网页资源数据包括的第二脚本语言文件,将所述第一网页资源数据包括的未加载文件加载到内存中,生成并显示所述目标网页。
第二脚本语言文件用于对第一网页资源数据进行初始化,将第一网页资源数据中未加载文件加载到内存中。其中,第二脚本语言文件可以包括初始化函数。可以在执行第二脚本语言文件时,通过第二脚本语言文件调用该初始化函数,将未加载文件加载到内存中。第二脚本语言文件在第二超文本标记语言文件中的位置,可以参考前述第一脚本语言文件在第一超文本标记语言文件中的位置。其中,未加载文件可以包括第一网页资源数据中的文件。或者,可以配置未加载文件包括第二网页资源数据中的文件。
未加载文件可以包括第一网页资源数据中的脚本语言文件(包括但不限于第一脚本语言文件)、第一层叠样式表文件和配置文件(如图像文件)等中的至少一项。在第一超文本标记语言文件的解析过程中,第一网页资源数据中的部分文件未加载到内存中;或者在第二超文本标记语言文件的解析时,将已经加载到内存中的部分文件从内存中释放,同时在第二超文本标记语言文件的解析过程中,仅会将第二网页资源数据加载到内存中,导致第一网页资源数据中的未加载文件未加载到内存中。如果目标网页在运行过程中,接收到针对第一网页资源数据关联的页面部分的输入操作,则无法根据未加载文件对该页面部分进行响应,导致目标网页无法正常运行。可以通过执行第二脚本语言文件,将未加载文件加载到内存中,以便在接收到用户针对第一网页资源数据生成的页面部分输入交互指令时,可以正确响应。
示例性的,目标网页的输入操作可以包括针对目标网页中与第一网页资源数据关联的页面部分的输入操作。例如,第一网页资源数据包括下拉菜单配置数据,输入操作可以是针对下拉菜单的点击操作,未加载文件用于在检测到针对下拉菜单的点击操作的事件时,显示下拉菜单的选项内容。
本公开实施例的技术方案通过执行第二脚本语言文件,将第一网页资源数据包括的未加载文件加载到内存中,可以实现对第一网页资源数据关联页面部分的输入操作进行响应,保证目标网页正常运行,提高网页响应结果的正确性。
图6是根据一示例性实施例示出的一种网页显示方法的流程图,本实施例是对上述技术方案的进一步细化,本实施例中的技术方案可以与上述一个或者多个实施例中的各个可选方案结合。如图6所示,网页显示方法包括以下步骤。
在步骤S41中,在接收到目标网页的访问操作时,从所述访问操作中提取第一网页资源地址,并根据所述第一网页资源地址中的协议信息和第一资源标识信息,构建第一资源获取请求。
第一资源获取请求用于向第一静态资源服务器请求第一网页资源数据,以获取第一静态资源服务器存储的第一网页资源数据。
第一资源标识信息用于确定第一网页资源数据的网络位置,第一资源标识信息可以是指第一网页资源数据的标识信息,例如,用于存储第一网页资源数据的文件名。协议信息可以是指与第一静态资源服务器的传输协议。传输协议可以是指第一静态资源服务器与本机设备之间的协议。
在步骤S42中,将所述第一资源获取请求发送至第一静态资源服务器,所述第一静态资源服务器与所述第一网页资源地址中的主机标识信息匹配。
第一网页资源地址中的主机标识信息用于标识第一静态资源服务器。第一网页资源数据通常是存储在第一静态资源服务器匹配的数据库中。
示例性的,从第一网页资源地址中提取域名,并根据域名确定第一静态资源服务器的IP地址。第一静态资源服务器存储第一网页资源数据,用于提供第一网页资源数据。静态资源服务器用于执行数据存储和查询操作,无法执行数据的复杂操作,例如,静态资源服务器无法执行第一网页资源数据和第二网页资源数据的合成操作。示例性的,静态资源服务器可以包括内容分发服务器和反向代理(Nginx)服务器。其中,根据域名确定第一静态资源服务器的IP地址,可以采用负载均衡策略,在多个内容分发服务器或者多个Nginx服务器选择一个服务器作为第一静态资源服务器,并获取第一静态资源服务器的IP地址。
现有技术中可以通过Node服务器或Java服务器实现执行第一网页资源数据和第二网页资源数据的合成操作,相比于Node服务器或Java服务器,内容分发服务器或者Nginx服务器的经济成本和维护成本更低。
在步骤S43中,接收所述第一静态资源服务器反馈的第一网页资源数据,所述第一网页资源数据通过所述第一静态资源服务器根据所述第一资源标识信息查询获取。
第一静态资源服务器存储有第一资源标识信息与第一网页资源数据的对应关系,可以在数据库中查询与第一资源标志信息匹配的第一网页资源数据,并反馈给本机设备。
实际上,第一网页资源地址中的主机标识信息用于确定存储第一网页资源数据的第一静态资源服务器,第一资源标识信息用于第一静态资源服务器确定并获取第一网页资源数据。
在步骤S44中,从所述第一网页资源数据中提取第一配置数据,并生成第一网页配置信息树,所述第一网页配置信息树用于通过树形结构的网页元素表示第一配置数据。
在步骤S45中,从所述第一网页资源数据中提取第二网页资源地址,并根据所述第二网页资源地址中的协议信息和第二资源标识信息,构建第二资源获取请求。
第二资源获取请求用于向第二静态资源服务器请求第二网页资源数据,以获取第二静态资源服务器存储的第二网页资源数据。
第二资源标识信息用于确定第二网页资源数据的网络位置,第二资源标识信息可以是指第二网页资源数据的标识信息,例如,用于存储第二网页资源数据的文件名。协议信息可以是指与第二静态资源服务器的传输协议。传输协议可以是指第二静态资源服务器与本机设备之间的协议。
在步骤S46中,将所述第二资源获取请求发送至第二静态资源服务器,所述第二静态资源服务器与所述第二网页资源地址中的主机标识信息匹配。
第二网页资源地址中的主机标识信息用于标识第二静态资源服务器。第二网页资源数据通常是存储在第二静态资源服务器匹配的数据库中。
在步骤S47中,接收所述第二静态资源服务器反馈的第二网页资源数据,所述第二网页资源数据通过所述第二静态资源服务器根据所述第二资源标识信息查询获取。
第二静态资源服务器存储有第二资源标识信息与第二网页资源数据的对应关系,可以在数据库中查询与第二资源标志信息匹配的第二网页资源数据,并反馈给本机设备。
实际上,第二网页资源地址中的主机标识信息用于确定存储第二网页资源数据的第二静态资源服务器,第二资源标识信息用于第二静态资源服务器确定并获取第二网页资源数据。
在步骤S48中,从所述第二网页资源数据中提取第二配置数据,并添加到所述第一网页配置信息树中,生成第二网页配置信息树,所述第二网页配置信息树用于通过树形结构的网页元素表示所述第一配置数据和所述第二配置数据。
在步骤S49中,将所述第二网页配置信息树中包括的网页元素进行页面布局和绘制,生成并显示所述目标网页。
本公开实施例的技术方案通过从静态资源服务器中获取第一网页资源数据和第二网页资源数据,可以避免服务器执行网页资源数据的合成操作,服务器只需进行网页资源数据的下发操作,简化服务器的网页资源数据的处理操作,可以降低服务器的性能要求,从而降低服务器的经济成本和维护成本。
图7是根据一示例性实施例示出的一种网页资源生成方法的流程图,如图7所示,网页显示方法用于电子设备中,由静态资源服务器来执行,包括以下步骤。
在步骤S71中,获取至少两个网页的配置数据。
获取多个网页,以及每个网页分别对应的配置数据。
在步骤S72中,从各所述配置数据中获取相同的配置数据,生成第一网页资源数据,并获取所述第一网页资源数据的第一网页资源地址,所述第一网页资源数据用于表示各所述网页中相同的配置数据。
将多个网页分别对应的配置数据中,提取出相同数据,生成第一网页资源数据,表明将多个网页中公共部分抽象出来生成相应的网页资源数据。
在步骤S73中,根据各所述配置数据中不同的配置数据,以及所述第一网页资源地址,生成各所述网页匹配的第二网页资源数据,所述第二网页资源数据用于表示各所述网页中不同的配置数据,所述第二网页资源数据用于表示各所述网页中不同的配置数据;其中,所述第一网页资源数据和各所述第二网页资源数据用于分别发送至客户端,以指示所述客户端根据所述第一网页资源数据和目标第二网页资源数据,生成目标网页,所述目标第二网页资源数据为与所述目标网页匹配的第二网页资源数据。
将多个网页分别对应的配置数据中,提取出不同数据,分别生成与网页匹配的第二网页资源数据,表明将多个网页中不同部分抽象出来生成与网页匹配的网页资源数据。第二网页资源数据中配置有第一网页资源地址,从而,可以直接从第二网页资源数据中获取第一网页资源地址,从而快速获取第一网页资源地址处存储的第一网页资源数据,从而将第一网页资源数据和第二网页资源数据建立连接关系,可以避免在从服务器请求获取第一网页资源地址的操作,提高第一网页资源数据的获取效率。
从而,将一个网页划分成两个部分,一部分是相同内容,是通过第一网页资源数据中的第一配置数据生成;另外一个部分是不同内容,是通过第二网页资源数据中的第二配置数据生成。
需要说明的是,本实施例中的第一网页资源数据相当于前述实施例中的第二网页资源数据,而本实施例中的第二网页资源数据相当于前述实施例中的第一网页资源数据。
在客户端需要生成目标网页时,只需要向第二静态资源服务器请求与目标网页匹配的目标第二网页资源数据,并在目标网页资源的解析过程中,向第一静态资源服务器请求第一网页资源数据,并采用如任一本公开实施例所述的网页显示方法,生成目标网页。
可选的,所述第一网页资源数据和所述目标第二网页资源数据用于指示所述客户端从所述第一网页资源数据提取第一配置数据,并生成第一网页配置信息树,同时从所述目标第二网页资源数据提取第二配置数据,并添加到所述第一网页配置信息树中,生成第二网页配置信息树,以及将所述第二网页配置信息树中包括的网页元素进行页面布局和绘制,生成所述目标网页,所述第一网页配置信息树用于通过树形结构的网页元素表示所述第一配置数据,所述第二网页配置信息树用于通过树形结构的网页元素表示所述第一配置数据和所述第二配置数据。
本实施例中未详尽的描述可以参考前述实施例。
可选的,在生成所述第二网页资源数据之后,还包括:将所述第一网页资源数据发送至第一静态资源服务器,所述第一静态资源服务器用于存储所述第一网页资源数据,以及将所述第一网页资源数据发送至所述客户端;将各第二网页资源数据发送至第二静态资源服务器,所述第二静态资源服务器用于存储各所述第二网页资源数据,以及将所述第二网页资源数据发送至所述客户端。
其中,第一网页资源数据和第二网页资源数据用于共同配合渲染目标页面。由客户端执行第一网页资源数据和第二网页资源数据的合成操作,本公开实施例提供的静态资源服务器无需执行第一网页资源数据和第二网页资源数据的合成操作,减少静态资源服务器的操作。服务器执行第一网页资源数据和第二网页资源数据的合成操作,通常仅在第二网页资源数据发布更新时,不会重新执行合成操作,从而合成后的网页资源数据不包括第二网页资源数据的更新内容,相应的,网页呈现的内容不包括第二网页资源数据。而只有当第一网页资源数据发布更新时,重新执行合成操作,合成后的网页资源数据包括第二网页资源数据的更新内容,相应的,网页呈现的内容包括第二网页资源数据,大大降低了第二网页资源数据的更新效率。在客户端执行合成操作时,客户端每次获取最新的第一网页资源数据和第二网页资源数据,并渲染形成最新的网页,提高第二网页资源数据的更新效率,以及网页更新效率。而且,不同客户端分别生成不同网页时,每个网页均可以获取最新的相同配置数据,从而实现,相同配置数据一次更新,同时更新全部网页的相同内容。
可选的,在将各第二网页资源数据发送至第二静态资源服务器之后,还包括:将所述第一网页资源数据的更新数据发送至所述第一静态资源服务器,以指示所述第一静态资源服务器更新所述第一网页资源数据;将各所述第二网页资源数据的更新数据发送至所述第二静态资源服务器,以指示所述第二静态资源服务器更新各所述第二网页资源数据。
第一静态资源服务器在第一网页资源数据发布更新时,实时更新第一网页资源数据。
第二静态资源服务器在第二网页资源数据发布更新时,实时更新第二网页资源数据。
第一静态资源服务器可以与第二静态资源服务器相同,也可以不同。第一网页资源数据的发布更新时间和过程和第二网页资源数据的发布更新时间和过程相互独立。
通过在第一网页资源数据更新时,指示第一静态资源服务器更新第一网页资源数据,以及在第二网页资源数据更新时,指示第二静态资源服务器更新第二网页资源数据,实现独立更新和维护多个网页的相同配置数据,以及不同配置数据,实现分离开发多个网页中的相同部分和不同部分,提高网页的开发效率,实现灵活配置多个网页内容。
本公开实施例的技术方案通过从多个网页中提取出相同配置数据,生成第一网页资源数据,并确定存储第一网页资源数据的第一网页资源地址,以及通过多个网页提取出不同配置数据,以及第一网页资源地址,生成每个网页对应的第二网页资源数据,实现将一个网页划分成相同内容和不同内容,并分别开发,同时将两个网页资源数据发送至客户端,以使客户端进行组合渲染生成网页,实现纯前端技术渲染网页,实现网页渲染过程不依赖服务器,简化服务器的网页资源数据的下发操作,降低服务器的经济成本和维护成本,同时,提高第二网页资源数据的更新效率,提高网页更新的实时性。
图8是根据一示例性实施例示出的一种网页显示装置框图。参照图8,该装置包括第一网页资源数据获取单元121,第一网页配置信息树生成单元122、第二网页资源数据获取单元123、第二网页配置信息树生成单元124和目标网页显示单元125。
第一网页资源数据获取单元121,被配置为执行在接收到目标网页的访问操作时,从所述访问操作中提取第一网页资源地址,获取在所述第一网页资源地址处存储的第一网页资源数据;
第一网页配置信息树生成单元122,被配置为执行从所述第一网页资源数据中提取第一配置数据,并生成第一网页配置信息树,所述第一网页配置信息树用于通过树形结构的网页元素表示第一配置数据;
第二网页资源数据获取单元123,被配置为执行从所述第一网页资源数据中提取第二网页资源地址,并根据所述第二网页资源地址获取在所述第二网页资源地址处存储的第二网页资源数据;
第二网页配置信息树生成单元124,被配置为执行从所述第二网页资源数据中提取第二配置数据,并添加到所述第一网页配置信息树中,生成第二网页配置信息树,所述第二网页配置信息树用于通过树形结构的网页元素表示所述第一配置数据和所述第二配置数据;
目标网页显示单元125,被配置为执行将所述第二网页配置信息树中包括的网页元素进行页面布局和绘制,生成并显示所述目标网页。
本公开实施例的技术方案通过获取目标网页对应的第一网页资源数据,提取第一配置数据,生成第一网页配置信息树,以及获取目标网页对应的第二网页资源数据,提取第二配置数据并添加到在第一网页配置信息树中,形成第二网页配置信息树,将第二网页配置信息树包括的网页元素进行布局和绘制,生成并显示目标网页,实现在客户端组合通用框架网页内容与目标网页个性化内容,可以在目标网页的访问过程中获取最新的网页资源数据,解决了在服务端执行网页的通用框架内容和个性化内容的合成操作,导致客户端获取的网页资源数据中通用框架网页内容没有更新,从而导致网页更新效率低的问题,可以在目标网页访问过程中,实时获取最新的通用框架内容和最新的个性化内容,及时更新目标网页中的内容,提高目标网页的更新效率。
可选的,所述第一网页配置信息树生成单元,包括:
第一脚本语言文件执行子单元,被配置为执行在所述第一配置信息树构建的过程中,执行所述第一网页资源数据包括的第一脚本语言文件;
第二网页资源地址获取子单元,被配置为执行通过所述第一脚本语言文件,执行第二网页资源地址的获取操作,获取所述第一网页资源数据包括的第二网页资源地址。
可选的,所述第二配置数据为多个网页的配置数据和所述目标网页的配置数据中相同的配置数据,所述第一配置数据为多个网页的配置数据和所述目标网页的配置数据中不同的配置数据。
可选的,所述第二网页配置信息树生成单元,包括:
网页元素提取子单元,被配置为执行从所述第二网页资源数据中提取网页元素,并生成对应的节点;
网页元素添加子单元,被配置为执行根据各所述网页元素之间的嵌套关系,将各所述网页元素对应的节点添加到所述第一配置信息树中匹配的位置处,所述第一配置信息树中包括多个节点,所述节点用于表示网页元素,所述节点之间的连接关系用于表示各所述网页元素的嵌套关系;
第二配置信息树生成子单元,被配置为执行在所述第二网页资源数据中全部网页元素对应的节点添加完成时,将当前时刻的第一配置信息树作为第二配置信息树。
可选的,所述第一网页资源数据获取单元,包括:
第一资源获取请求生成子单元,被配置为执行根据所述第一网页资源地址中的协议信息和第一资源标识信息,构建第一资源获取请求;
第一资源获取请求发送子单元,被配置为执行将所述第一资源获取请求发送至第一静态资源服务器,所述第一静态资源服务器与所述第一网页资源地址中的主机标识信息匹配;
第一网页资源数据接收子单元,被配置为执行接收所述第一静态资源服务器反馈的第一网页资源数据,所述第一网页资源数据通过所述第一静态资源服务器根据所述第一资源标识信息查询获取;
所述第二网页资源数据获取单元,包括:
第二资源获取请求生成子单元,被配置为执行根据所述第二网页资源地址中的协议信息和第二资源标识信息,构建第二资源获取请求;
第二资源获取请求发送子单元,被配置为执行将所述第二资源获取请求发送至第二静态资源服务器,所述第二静态资源服务器与所述第二网页资源地址中的主机标识信息匹配;
第二网页资源数据接收子单元,被配置为执行接收所述第二静态资源服务器反馈的第二网页资源数据,所述第二网页资源数据通过所述第二静态资源服务器根据所述第二资源标识信息查询获取。
可选的,所述网页显示装置,还包括:
初始化单元,被配置为执行在将所述第二网页配置信息树中包括的网页元素进行页面布局和绘制的同时,通过所述第二网页资源数据包括的第二脚本语言文件,将所述第一网页资源数据包括的未加载文件加载到内存中。
可选的,所述第一配置数据包括表单内容配置信息,所述第二配置数据包括下述至少一项:菜单配置信息、页头配置信息、侧边栏配置信息和页尾配置信息。
可选的,所述第一网页配置信息树生成单元,包括:
超文本标记语言文件查询子单元,被配置为执行从所述第一网页资源数据包括的超文本标记语言文件中提取第一配置数据。
关于上述实施例中的装置,其中各个模块执行操作的具体方式已经在有关该方法的实施例中进行了详细描述,此处将不做详细阐述说明。
图9是根据一示例性实施例示出的一种网页资源生成装置框图。参照图9,该装置包括网页配置信息获取单元221,相同配置信息获取单元222和不同配置信息获取单元223。
网页配置信息获取单元221,被配置为执行获取至少两个网页的配置数据;
相同配置信息获取单元222,被配置为执行从各所述配置数据中获取相同的配置数据,生成第一网页资源数据,并获取所述第一网页资源数据的第一网页资源地址,所述第一网页资源数据用于表示各所述网页中相同的配置数据;
不同配置信息获取单元223,被配置为执行根据各所述配置数据中不同的配置数据,以及所述第一网页资源地址,生成各所述网页匹配的第二网页资源数据,所述第二网页资源数据用于表示各所述网页中不同的配置数据;其中,所述第一网页资源数据和各所述第二网页资源数据用于分别发送至客户端,以指示所述客户端根据所述第一网页资源数据和目标第二网页资源数据,生成目标网页,所述目标第二网页资源数据为与所述目标网页匹配的第二网页资源数据。
本公开实施例的技术方案通过从多个网页中提取出相同配置数据,生成第一网页资源数据,并确定存储第一网页资源数据的第一网页资源地址,以及通过多个网页提取出不同配置数据,以及第一网页资源地址,生成每个网页对应的第二网页资源数据,实现将一个网页划分成相同内容和不同内容,并分别开发,同时将两个网页资源数据发送至客户端,以使客户端进行组合渲染生成网页,实现纯前端技术渲染网页,实现网页渲染过程不依赖服务器,简化服务器的网页资源数据的下发操作,降低服务器的经济成本和维护成本,同时,提高第二网页资源数据的更新效率,提高网页更新的实时性。
可选的,所述第一网页资源数据和所述目标第二网页资源数据用于指示所述客户端从所述第一网页资源数据提取第一配置数据,并生成第一网页配置信息树,同时从所述目标第二网页资源数据提取第二配置数据,并添加到所述第一网页配置信息树中,生成第二网页配置信息树,以及将所述第二网页配置信息树中包括的网页元素进行页面布局和绘制,生成所述目标网页,所述第一网页配置信息树用于通过树形结构的网页元素表示所述第一配置数据,所述第二网页配置信息树用于通过树形结构的网页元素表示所述第一配置数据和所述第二配置数据。
可选的,所述网页资源生成装置还包括:
第一网页资源数据静态存储单元,被配置为执行在生成所述第二网页资源数据之后,将所述第一网页资源数据发送至第一静态资源服务器,所述第一静态资源服务器用于存储所述第一网页资源数据,以及将所述第一网页资源数据发送至所述客户端;
第二网页资源数据静态存储单元,被配置为执行将各第二网页资源数据发送至第二静态资源服务器,所述第二静态资源服务器用于存储各所述第二网页资源数据,以及将所述第二网页资源数据发送至所述客户端。
可选的,所述网页资源生成装置还包括:
第一网页资源数据更新单元,被配置为执行在将各第二网页资源数据发送至第二静态资源服务器之后,将所述第一网页资源数据的更新数据发送至所述第一静态资源服务器,以指示所述第一静态资源服务器更新所述第一网页资源数据;
第二网页资源数据更新单元,被配置为执行将各所述第二网页资源数据的更新数据发送至所述第二静态资源服务器,以指示所述第二静态资源服务器更新各所述第二网页资源数据。
关于上述实施例中的装置,其中各个模块执行操作的具体方式已经在有关该方法的实施例中进行了详细描述,此处将不做详细阐述说明。
图10是根据一示例性实施例示出的一种电子设备的结构示意图,如图10所示,该电子设备包括:
一个或多个处理器310,
图10中以一个处理器310为例;
存储器320;
所述设备中的处理器310和存储器320可以通过总线或者其他方式连接,图10中以通过总线连接为例。
存储器320作为一种非暂态计算机可读存储介质,可用于存储软件程序、计算机可执行程序以及模块,如本公开实施例中的一种网页显示方法对应的程序指令/模块(例如,附图8所示的第一网页资源数据获取单元121,第一网页配置信息树生成单元122、第二网页资源数据获取单元123、第二网页配置信息树生成单元124和目标网页显示单元125);或者,如本公开实施例中的一种网页资源生成方法对应的程序指令/模块(例如,附图9所示的网页配置信息获取单元221,相同配置信息获取单元222和不同配置信息获取单元223)。处理器310通过运行存储在存储器320中的软件程序、指令以及模块,从而执行计算机设备的各种功能应用以及数据处理,即实现上述方法实施例的一种网页显示方法,即:
在接收到目标网页的访问操作时,从所述访问操作中提取第一网页资源地址,获取在所述第一网页资源地址处存储的第一网页资源数据;
从所述第一网页资源数据中提取第一配置数据,并生成第一网页配置信息树,所述第一网页配置信息树用于通过树形结构的网页元素表示第一配置数据;
从所述第一网页资源数据中提取第二网页资源地址,并根据所述第二网页资源地址获取在所述第二网页资源地址处存储的第二网页资源数据;
从所述第二网页资源数据中提取第二配置数据,并添加到所述第一网页配置信息树中,生成第二网页配置信息树,所述第二网页配置信息树用于通过树形结构的网页元素表示所述第一配置数据和所述第二配置数据;
将所述第二网页配置信息树中包括的网页元素进行页面布局和绘制,生成并显示所述目标网页。
或者,实现上述方法实施例的一种网页资源生成方法,即:
获取至少两个网页的配置数据;
从各所述配置数据中获取相同的配置数据,生成第一网页资源数据,并获取所述第一网页资源数据的第一网页资源地址,所述第一网页资源数据用于表示各所述网页中相同的配置数据;
根据各所述配置数据中不同的配置数据,以及所述第一网页资源地址,生成各所述网页匹配的第二网页资源数据,所述第二网页资源数据用于表示各所述网页中不同的配置数据;
其中,所述第一网页资源数据和各所述第二网页资源数据用于分别发送至客户端,以指示所述客户端根据所述第一网页资源数据和目标第二网页资源数据,生成目标网页,所述目标第二网页资源数据为与所述目标网页匹配的第二网页资源数据。
存储器320可以包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需要的应用程序;存储数据区可存储根据计算机设备的使用所创建的数据等。此外,存储器320可以包括高速随机存取存储器,还可以包括非暂态性存储器,例如至少一个磁盘存储器件、闪存器件、或其他非暂态性固态存储器件。在一些实施例中,存储器320可选包括相对于处理器310远程设置的存储器,这些远程存储器可以通过网络连接至终端设备。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。
在示例性实施例中,还提供了一种包括指令的存储介质,例如包括指令的存储器320,上述指令可由装置的处理器310执行以完成上述方法。可选地,存储介质可以是非临时性计算机可读存储介质,例如,所述非临时性计算机可读存储介质可以是ROM、随机存取存储器(RAM)、CD-ROM、磁带、软盘和光数据存储设备等。
输入装置330可用于接收输入的数字或字符信息,以及产生与服务器的用户设置以及功能控制有关的键信号输入。输出装置340可包括显示屏等显示设备,例如,在服务器中输出装置可以不包括显示屏。
在示例性实施例中,还提供一种计算机程序产品,用于与电子设备结合使用,所述计算机程序产品包括计算机可读存储介质和内嵌于其中的计算机程序机制,经由计算机载入该程序并执行后能够实现如本公开任一实施例所述的网页显示方法或者如本公开任一实施例所述的网页资源生成方法。
本领域技术人员在考虑说明书及实践这里公开的发明后,将容易想到本公开的其它实施方案。本申请旨在涵盖本公开的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本公开的一般性原理并包括本公开未公开的本技术领域中的公知常识或惯用技术手段。说明书和实施例仅被视为示例性的,本公开的真正范围和精神由下面的权利要求指出。
应当理解的是,本公开并不局限于上面已经描述并在附图中示出的精确结构,并且可以在不脱离其范围进行各种修改和改变。本公开的范围仅由所附的权利要求来限制。
Claims (22)
1.一种网页显示方法,其特征在于,包括:
在接收到目标网页的访问操作时,从所述访问操作中提取第一网页资源地址,获取在所述第一网页资源地址处存储的第一网页资源数据;
从所述第一网页资源数据中提取第一配置数据,并生成第一网页配置信息树,所述第一网页配置信息树用于通过树形结构的网页元素表示第一配置数据;
从所述第一网页资源数据中提取第二网页资源地址,并根据所述第二网页资源地址获取在所述第二网页资源地址处存储的第二网页资源数据;
从所述第二网页资源数据中提取第二配置数据,并添加到所述第一网页配置信息树中,生成第二网页配置信息树,所述第二网页配置信息树用于通过树形结构的网页元素表示所述第一配置数据和所述第二配置数据;
将所述第二网页配置信息树中包括的网页元素进行页面布局和绘制,生成并显示所述目标网页;
所述从所述第二网页资源数据中提取第二配置数据,并添加到所述第一网页配置信息树中,生成第二网页配置信息树,包括:
从所述第二网页资源数据中提取网页元素,并生成对应的节点;
根据各所述网页元素之间的嵌套关系,将各所述网页元素对应的节点添加到所述第一网页配置信息树中匹配的位置处,所述第一网页配置信息树中包括多个节点,所述节点用于表示网页元素,所述节点之间的连接关系用于表示各所述网页元素的嵌套关系;
在所述第二网页资源数据中全部网页元素对应的节点添加完成时,将当前时刻的第一网页配置信息树作为第二网页配置信息树。
2.根据权利要求1所述的网页显示方法,其特征在于,所述从所述第一网页资源数据中提取第二网页资源地址,包括:
在所述第一网页配置信息树构建的过程中,执行所述第一网页资源数据包括的第一脚本语言文件;
通过所述第一脚本语言文件,执行第二网页资源地址的获取操作,获取所述第一网页资源数据包括的第二网页资源地址。
3.根据权利要求1所述的网页显示方法,其特征在于,所述第二配置数据为多个网页的配置数据和所述目标网页的配置数据中相同的配置数据,所述第一配置数据为多个网页的配置数据和所述目标网页的配置数据中不同的配置数据。
4.根据权利要求1所述的网页显示方法,其特征在于,所述获取在所述第一网页资源地址处存储的第一网页资源数据,包括:
根据所述第一网页资源地址中的协议信息和第一资源标识信息,构建第一资源获取请求;
将所述第一资源获取请求发送至第一静态资源服务器,所述第一静态资源服务器与所述第一网页资源地址中的主机标识信息匹配;
接收所述第一静态资源服务器反馈的第一网页资源数据,所述第一网页资源数据通过所述第一静态资源服务器根据所述第一资源标识信息查询获取;
所述根据所述第二网页资源地址获取在所述第二网页资源地址处存储的第二网页资源数据,包括:
根据所述第二网页资源地址中的协议信息和第二资源标识信息,构建第二资源获取请求;
将所述第二资源获取请求发送至第二静态资源服务器,所述第二静态资源服务器与所述第二网页资源地址中的主机标识信息匹配;
接收所述第二静态资源服务器反馈的第二网页资源数据,所述第二网页资源数据通过所述第二静态资源服务器根据所述第二资源标识信息查询获取。
5.根据权利要求1所述的网页显示方法,其特征在于,在将所述第二网页配置信息树中包括的网页元素进行页面布局和绘制的同时,还包括:
通过所述第二网页资源数据包括的第二脚本语言文件,将所述第一网页资源数据包括的未加载文件加载到内存中。
6.根据权利要求1所述的网页显示方法,其特征在于,所述第一配置数据包括表单内容配置信息,所述第二配置数据包括下述至少一项:菜单配置信息、页头配置信息、侧边栏配置信息和页尾配置信息。
7.根据权利要求1所述的网页显示方法,其特征在于,所述从所述第一网页资源数据中提取第一配置数据,包括:
从所述第一网页资源数据包括的超文本标记语言文件中提取第一配置数据。
8.一种网页资源生成方法,其特征在于,包括:
获取至少两个网页的配置数据;
从各所述配置数据中获取相同的配置数据,生成第一网页资源数据,并获取所述第一网页资源数据的第一网页资源地址,所述第一网页资源数据用于表示各所述网页中相同的配置数据;
根据各所述配置数据中不同的配置数据,以及所述第一网页资源地址,生成各所述网页匹配的第二网页资源数据,所述第二网页资源数据用于表示各所述网页中不同的配置数据;
其中,所述第一网页资源数据和各所述第二网页资源数据用于分别发送至客户端,以指示所述客户端根据所述第一网页资源数据和目标第二网页资源数据,生成目标网页,所述目标第二网页资源数据为与所述目标网页匹配的第二网页资源数据;
所述第一网页资源数据和所述目标第二网页资源数据用于指示所述客户端从所述第一网页资源数据提取第一配置数据,并生成第一网页配置信息树,同时从所述目标第二网页资源数据提取第二配置数据,并添加到所述第一网页配置信息树中,生成第二网页配置信息树,以及将所述第二网页配置信息树中包括的网页元素进行页面布局和绘制,生成所述目标网页,所述第一网页配置信息树用于通过树形结构的网页元素表示所述第一配置数据,所述第二网页配置信息树用于通过树形结构的网页元素表示所述第一配置数据和所述第二配置数据;
所述从所述目标第二网页资源数据中提取第二配置数据,并添加到所述第一网页配置信息树中,生成第二网页配置信息树,包括:从所述目标第二网页资源数据中提取网页元素,并生成对应的节点;根据各所述网页元素之间的嵌套关系,将各所述网页元素对应的节点添加到所述第一网页配置信息树中匹配的位置处,所述第一网页配置信息树中包括多个节点,所述节点用于表示网页元素,所述节点之间的连接关系用于表示各所述网页元素的嵌套关系;在所述目标第二网页资源数据中全部网页元素对应的节点添加完成时,将当前时刻的第一网页配置信息树作为第二网页配置信息树。
9.根据权利要求8所述的网页资源生成方法,其特征在于,在生成所述第二网页资源数据之后,还包括:
将所述第一网页资源数据发送至第一静态资源服务器,所述第一静态资源服务器用于存储所述第一网页资源数据,以及将所述第一网页资源数据发送至所述客户端;
将各第二网页资源数据发送至第二静态资源服务器,所述第二静态资源服务器用于存储各所述第二网页资源数据,以及将所述第二网页资源数据发送至所述客户端。
10.根据权利要求9所述的网页资源生成方法,其特征在于,在将各第二网页资源数据发送至第二静态资源服务器之后,还包括:
将所述第一网页资源数据的更新数据发送至所述第一静态资源服务器,以指示所述第一静态资源服务器更新所述第一网页资源数据;
将各所述第二网页资源数据的更新数据发送至所述第二静态资源服务器,以指示所述第二静态资源服务器更新各所述第二网页资源数据。
11.一种网页显示装置,其特征在于,包括:
第一网页资源数据获取单元,被配置为执行在接收到目标网页的访问操作时,从所述访问操作中提取第一网页资源地址,获取在所述第一网页资源地址处存储的第一网页资源数据;
第一网页配置信息树生成单元,被配置为执行从所述第一网页资源数据中提取第一配置数据,并生成第一网页配置信息树,所述第一网页配置信息树用于通过树形结构的网页元素表示第一配置数据;
第二网页资源数据获取单元,被配置为执行从所述第一网页资源数据中提取第二网页资源地址,并根据所述第二网页资源地址获取在所述第二网页资源地址处存储的第二网页资源数据;
第二网页配置信息树生成单元,被配置为执行从所述第二网页资源数据中提取第二配置数据,并添加到所述第一网页配置信息树中,生成第二网页配置信息树,所述第二网页配置信息树用于通过树形结构的网页元素表示所述第一配置数据和所述第二配置数据;
目标网页显示单元,被配置为执行将所述第二网页配置信息树中包括的网页元素进行页面布局和绘制,生成并显示所述目标网页;
所述第二网页配置信息树生成单元,包括:
网页元素提取子单元,被配置为执行从所述第二网页资源数据中提取网页元素,并生成对应的节点;
网页元素添加子单元,被配置为执行根据各所述网页元素之间的嵌套关系,将各所述网页元素对应的节点添加到所述第一网页配置信息树中匹配的位置处,所述第一网页配置信息树中包括多个节点,所述节点用于表示网页元素,所述节点之间的连接关系用于表示各所述网页元素的嵌套关系;
第二网页配置信息树生成子单元,被配置为执行在所述第二网页资源数据中全部网页元素对应的节点添加完成时,将当前时刻的第一网页配置信息树作为第二网页配置信息树。
12.根据权利要求11所述的网页显示装置,其特征在于,所述第一网页配置信息树生成单元,包括:
第一脚本语言文件执行子单元,被配置为执行在所述第一网页配置信息树构建的过程中,执行所述第一网页资源数据包括的第一脚本语言文件;
第二网页资源地址获取子单元,被配置为执行通过所述第一脚本语言文件,执行第二网页资源地址的获取操作,获取所述第一网页资源数据包括的第二网页资源地址。
13.根据权利要求11所述的网页显示装置,其特征在于,所述第二配置数据为多个网页的配置数据和所述目标网页的配置数据中相同的配置数据,所述第一配置数据为多个网页的配置数据和所述目标网页的配置数据中不同的配置数据。
14.根据权利要求11所述的网页显示装置,其特征在于,所述第一网页资源数据获取单元,包括:
第一资源获取请求生成子单元,被配置为执行根据所述第一网页资源地址中的协议信息和第一资源标识信息,构建第一资源获取请求;
第一资源获取请求发送子单元,被配置为执行将所述第一资源获取请求发送至第一静态资源服务器,所述第一静态资源服务器与所述第一网页资源地址中的主机标识信息匹配;
第一网页资源数据接收子单元,被配置为执行接收所述第一静态资源服务器反馈的第一网页资源数据,所述第一网页资源数据通过所述第一静态资源服务器根据所述第一资源标识信息查询获取;
所述第二网页资源数据获取单元,包括:
第二资源获取请求生成子单元,被配置为执行根据所述第二网页资源地址中的协议信息和第二资源标识信息,构建第二资源获取请求;
第二资源获取请求发送子单元,被配置为执行将所述第二资源获取请求发送至第二静态资源服务器,所述第二静态资源服务器与所述第二网页资源地址中的主机标识信息匹配;
第二网页资源数据接收子单元,被配置为执行接收所述第二静态资源服务器反馈的第二网页资源数据,所述第二网页资源数据通过所述第二静态资源服务器根据所述第二资源标识信息查询获取。
15.根据权利要求11所述的网页显示装置,其特征在于,所述网页显示装置,还包括:
初始化单元,被配置为执行在将所述第二网页配置信息树中包括的网页元素进行页面布局和绘制的同时,通过所述第二网页资源数据包括的第二脚本语言文件,将所述第一网页资源数据包括的未加载文件加载到内存中。
16.根据权利要求11所述的网页显示装置,其特征在于,所述第一配置数据包括表单内容配置信息,所述第二配置数据包括下述至少一项:菜单配置信息、页头配置信息、侧边栏配置信息和页尾配置信息。
17.根据权利要求11所述的网页显示装置,其特征在于,所述第一网页配置信息树生成单元,包括:
超文本标记语言文件查询子单元,被配置为执行从所述第一网页资源数据包括的超文本标记语言文件中提取第一配置数据。
18.一种网页资源生成装置,其特征在于,包括:
网页配置信息获取单元,被配置为执行获取至少两个网页的配置数据;
相同配置信息获取单元,被配置为执行从各所述配置数据中获取相同的配置数据,生成第一网页资源数据,并获取所述第一网页资源数据的第一网页资源地址,所述第一网页资源数据用于表示各所述网页中相同的配置数据;
不同配置信息获取单元,被配置为执行根据各所述配置数据中不同的配置数据,以及所述第一网页资源地址,生成各所述网页匹配的第二网页资源数据,所述第二网页资源数据用于表示各所述网页中不同的配置数据;其中,所述第一网页资源数据和各所述第二网页资源数据用于分别发送至客户端,以指示所述客户端根据所述第一网页资源数据和目标第二网页资源数据,生成目标网页,所述目标第二网页资源数据为与所述目标网页匹配的第二网页资源数据;
所述第一网页资源数据和所述目标第二网页资源数据用于指示所述客户端从所述第一网页资源数据提取第一配置数据,并生成第一网页配置信息树,同时从所述目标第二网页资源数据提取第二配置数据,并添加到所述第一网页配置信息树中,生成第二网页配置信息树,以及将所述第二网页配置信息树中包括的网页元素进行页面布局和绘制,生成所述目标网页,所述第一网页配置信息树用于通过树形结构的网页元素表示所述第一配置数据,所述第二网页配置信息树用于通过树形结构的网页元素表示所述第一配置数据和所述第二配置数据;
所述从所述目标第二网页资源数据中提取第二配置数据,并添加到所述第一网页配置信息树中,生成第二网页配置信息树,包括:从所述目标第二网页资源数据中提取网页元素,并生成对应的节点;根据各所述网页元素之间的嵌套关系,将各所述网页元素对应的节点添加到所述第一网页配置信息树中匹配的位置处,所述第一网页配置信息树中包括多个节点,所述节点用于表示网页元素,所述节点之间的连接关系用于表示各所述网页元素的嵌套关系;在所述目标第二网页资源数据中全部网页元素对应的节点添加完成时,将当前时刻的第一网页配置信息树作为第二网页配置信息树。
19.根据权利要求18所述的网页资源生成装置,其特征在于,所述网页资源生成装置还包括:
第一网页资源数据静态存储单元,被配置为执行在生成所述第二网页资源数据之后,将所述第一网页资源数据发送至第一静态资源服务器,所述第一静态资源服务器用于存储所述第一网页资源数据,以及将所述第一网页资源数据发送至所述客户端;
第二网页资源数据静态存储单元,被配置为执行将各第二网页资源数据发送至第二静态资源服务器,所述第二静态资源服务器用于存储各所述第二网页资源数据,以及将所述第二网页资源数据发送至所述客户端。
20.根据权利要求19所述的网页资源生成装置,其特征在于,所述网页资源生成装置还包括:
第一网页资源数据更新单元,被配置为执行在将各第二网页资源数据发送至第二静态资源服务器之后,将所述第一网页资源数据的更新数据发送至所述第一静态资源服务器,以指示所述第一静态资源服务器更新所述第一网页资源数据;
第二网页资源数据更新单元,被配置为执行将各所述第二网页资源数据的更新数据发送至所述第二静态资源服务器,以指示所述第二静态资源服务器更新各所述第二网页资源数据。
21.一种电子设备,其特征在于,包括:
处理器;
用于存储所述处理器可执行指令的存储器;
其中,所述处理器被配置为执行所述指令,以实现如权利要求1至7中任一项所述的网页显示方法或如权利要求8至10任一项所述的网页资源生成方法。
22.一种存储介质,当所述存储介质中的指令由电子设备的处理器执行时,使得电子设备能够执行如权利要求1至7中任一项所述的网页显示方法或如权利要求8至10任一项所述的网页资源生成方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010832850.3A CN112016014B (zh) | 2020-08-18 | 2020-08-18 | 网页显示、网页资源生成方法、装置、电子设备及介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010832850.3A CN112016014B (zh) | 2020-08-18 | 2020-08-18 | 网页显示、网页资源生成方法、装置、电子设备及介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112016014A CN112016014A (zh) | 2020-12-01 |
CN112016014B true CN112016014B (zh) | 2023-12-26 |
Family
ID=73504971
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010832850.3A Active CN112016014B (zh) | 2020-08-18 | 2020-08-18 | 网页显示、网页资源生成方法、装置、电子设备及介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112016014B (zh) |
Citations (18)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102789484A (zh) * | 2012-06-28 | 2012-11-21 | 奇智软件(北京)有限公司 | 一种网页信息处理方法和装置 |
CN102981848A (zh) * | 2012-11-13 | 2013-03-20 | 北京奇虎科技有限公司 | 网页主体元素处理浏览器和方法 |
CN104063460A (zh) * | 2014-06-25 | 2014-09-24 | 北京奇虎科技有限公司 | 一种在浏览器中加载网页的方法和装置 |
CN104714982A (zh) * | 2013-12-17 | 2015-06-17 | 阿里巴巴集团控股有限公司 | 一种网页的加载方法和系统 |
CN104951445A (zh) * | 2014-03-25 | 2015-09-30 | 小米科技有限责任公司 | 一种网页处理方法及装置 |
CN104965691A (zh) * | 2014-04-18 | 2015-10-07 | 腾讯科技(深圳)有限公司 | 配置网页页面的页面元素的方法、装置及系统 |
CN107508903A (zh) * | 2017-09-07 | 2017-12-22 | 维沃移动通信有限公司 | 一种网页内容的访问方法及终端设备 |
CN107748689A (zh) * | 2017-10-19 | 2018-03-02 | 阿里巴巴集团控股有限公司 | 一种网页展示方法和装置 |
CN108090069A (zh) * | 2016-11-22 | 2018-05-29 | 北京神州泰岳软件股份有限公司 | 一种在浏览器中显示网页资源的方法和装置 |
CN108345606A (zh) * | 2017-01-22 | 2018-07-31 | 腾讯科技(深圳)有限公司 | 网页资源的获取方法和装置 |
CN108366058A (zh) * | 2018-02-07 | 2018-08-03 | 平安普惠企业管理有限公司 | 防止广告运营商流量劫持的方法、装置、设备及存储介质 |
CN109788019A (zh) * | 2017-11-13 | 2019-05-21 | 重庆华龙艾迪信息技术有限公司 | 一种数据处理方法及代理服务器 |
CN110221871A (zh) * | 2019-04-22 | 2019-09-10 | 腾讯科技(深圳)有限公司 | 网页获取方法、装置、计算机设备及存储介质 |
CN110716783A (zh) * | 2019-10-10 | 2020-01-21 | 秒针信息技术有限公司 | 一种前端页面生成、部署方法及装置、存储介质和设备 |
CN110866198A (zh) * | 2019-09-27 | 2020-03-06 | 上海硬通网络科技有限公司 | 静态资源缓存方法、系统、装置、计算机设备和存储介质 |
CN111045655A (zh) * | 2019-12-18 | 2020-04-21 | 广州市百果园信息技术有限公司 | 一种页面渲染的方法、装置、渲染服务器和存储介质 |
CN111104587A (zh) * | 2018-10-26 | 2020-05-05 | 北京金山云网络技术有限公司 | 网页显示方法、装置和服务器 |
CN111431767A (zh) * | 2020-03-26 | 2020-07-17 | 深圳壹账通智能科技有限公司 | 多浏览器资源同步方法、装置、计算机设备和存储介质 |
-
2020
- 2020-08-18 CN CN202010832850.3A patent/CN112016014B/zh active Active
Patent Citations (18)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102789484A (zh) * | 2012-06-28 | 2012-11-21 | 奇智软件(北京)有限公司 | 一种网页信息处理方法和装置 |
CN102981848A (zh) * | 2012-11-13 | 2013-03-20 | 北京奇虎科技有限公司 | 网页主体元素处理浏览器和方法 |
CN104714982A (zh) * | 2013-12-17 | 2015-06-17 | 阿里巴巴集团控股有限公司 | 一种网页的加载方法和系统 |
CN104951445A (zh) * | 2014-03-25 | 2015-09-30 | 小米科技有限责任公司 | 一种网页处理方法及装置 |
CN104965691A (zh) * | 2014-04-18 | 2015-10-07 | 腾讯科技(深圳)有限公司 | 配置网页页面的页面元素的方法、装置及系统 |
CN104063460A (zh) * | 2014-06-25 | 2014-09-24 | 北京奇虎科技有限公司 | 一种在浏览器中加载网页的方法和装置 |
CN108090069A (zh) * | 2016-11-22 | 2018-05-29 | 北京神州泰岳软件股份有限公司 | 一种在浏览器中显示网页资源的方法和装置 |
CN108345606A (zh) * | 2017-01-22 | 2018-07-31 | 腾讯科技(深圳)有限公司 | 网页资源的获取方法和装置 |
CN107508903A (zh) * | 2017-09-07 | 2017-12-22 | 维沃移动通信有限公司 | 一种网页内容的访问方法及终端设备 |
CN107748689A (zh) * | 2017-10-19 | 2018-03-02 | 阿里巴巴集团控股有限公司 | 一种网页展示方法和装置 |
CN109788019A (zh) * | 2017-11-13 | 2019-05-21 | 重庆华龙艾迪信息技术有限公司 | 一种数据处理方法及代理服务器 |
CN108366058A (zh) * | 2018-02-07 | 2018-08-03 | 平安普惠企业管理有限公司 | 防止广告运营商流量劫持的方法、装置、设备及存储介质 |
CN111104587A (zh) * | 2018-10-26 | 2020-05-05 | 北京金山云网络技术有限公司 | 网页显示方法、装置和服务器 |
CN110221871A (zh) * | 2019-04-22 | 2019-09-10 | 腾讯科技(深圳)有限公司 | 网页获取方法、装置、计算机设备及存储介质 |
CN110866198A (zh) * | 2019-09-27 | 2020-03-06 | 上海硬通网络科技有限公司 | 静态资源缓存方法、系统、装置、计算机设备和存储介质 |
CN110716783A (zh) * | 2019-10-10 | 2020-01-21 | 秒针信息技术有限公司 | 一种前端页面生成、部署方法及装置、存储介质和设备 |
CN111045655A (zh) * | 2019-12-18 | 2020-04-21 | 广州市百果园信息技术有限公司 | 一种页面渲染的方法、装置、渲染服务器和存储介质 |
CN111431767A (zh) * | 2020-03-26 | 2020-07-17 | 深圳壹账通智能科技有限公司 | 多浏览器资源同步方法、装置、计算机设备和存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN112016014A (zh) | 2020-12-01 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP2987088B1 (en) | Client side page processing | |
US9330179B2 (en) | Configuring web crawler to extract web page information | |
WO2018133452A1 (zh) | 一种网页渲染方法及相关设备 | |
US11693914B2 (en) | Systems and methods for presenting web application content | |
US9098481B2 (en) | Increasing accuracy in determining purpose of fields in forms | |
CN102939583B (zh) | 创建任务会话 | |
US7958442B2 (en) | System and method to permit language independence for web interfaces | |
US20090106296A1 (en) | Method and system for automated form aggregation | |
US20160232252A1 (en) | Method for loading webpage, device and browser thereof | |
US20110072116A1 (en) | Method and system for providing xml-based asynchronous and interactive feeds for web applications | |
US20130007586A1 (en) | Method and system for creating and using web feed display templates | |
CN108595697B (zh) | 网页集成方法、装置及系统 | |
CN106951270B (zh) | 一种代码处理方法、系统及服务器 | |
CN104317570B (zh) | 动态解析Web应用的装置和方法 | |
US9122484B2 (en) | Method and apparatus for mashing up web applications | |
US12073173B2 (en) | Systems and methods for integrating application components in a web application | |
US20220414166A1 (en) | Advanced response processing in web data collection | |
JP5151696B2 (ja) | ユニフォームリソースロケータ情報を書き換えるプログラム | |
US10095791B2 (en) | Information search method and apparatus | |
CN112016014B (zh) | 网页显示、网页资源生成方法、装置、电子设备及介质 | |
JP5832056B1 (ja) | Webページの表示のためのプログラム、端末装置、およびサーバ装置 | |
JP2006065467A (ja) | データ抽出定義情報生成装置およびデータ抽出定義情報生成方法 | |
CA2752898A1 (en) | Methods and systems of outputting content of interest | |
CN108376090A (zh) | 网页图片的操作方法、装置、终端及存储介质 | |
CN116992183B (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 |