一种页面渲染方法及装置
技术领域
本申请涉及计算机技术领域,尤其是涉及一种页面渲染方法及装置。
背景技术
随着计算机技术和网络的快速发展,为人们的生活与工作带来的极大的便利,用户可以通过浏览器客户端浏览各种各样的页面,这些页面能够展示各种信息,当用户访问一个页面时,客户端会通过各种接口,向服务器请求页面内容对应的各种参数,获取参数后再进行页面渲染,将各种参数转换为可视化的页面。
在页面渲染的过程中,客户端需要向服务器请求各种参数,比如,在个人博客的页面中,需要展示博主的一些信息,客户端需要向服务器请求博主对应的参数信息,服务器会将博主的全量参数信息发送给客户端,然而,全量参数信息中会包含博主的各种信息,页面中只需要展示一部分博主的信息,服务器无法识别客户端需要的具体参数信息,客户端与服务器之间存在大量的无效数据传输,浪费了通信资源,页面渲染的效率也很低。
发明内容
有鉴于此,本申请的目的在于提供一种页面渲染方法及装置,能够有效减少服务器与客户端之间传输的数据量,提高页面渲染的效率,避免资源浪费。
本申请实施例提供了一种页面渲染方法,应用于服务器,所述方法包括:
获取客户端发送的页面渲染信息获取请求,所述页面渲染信息获取请求中携带有目标参数组的标识信息,以及目标参数筛选信息,所述目标参数筛选信息中包含需要筛选出的至少一种目标参数的标识信息;
根据所述目标参数组的标识信息,以及所述目标参数筛选信息,从查找到的目标参数组中各种参数的参数值中,筛选出至少一种目标参数的参数值;
将所述至少一种目标参数的参数值返回给所述客户端,用于所述客户端根据所述至少一种目标参数的参数值,进行页面渲染。
在一种可能的实施方式中,所述根据所述目标参数组的标识信息,以及所述目标参数筛选信息,从查找到的目标参数组中各种参数的参数值中,筛选出至少一种目标参数的参数值,包括:
遍历所述目标参数筛选信息中需要筛选的每种目标参数的标识信息,从所述目标参数组中各种参数的参数值中,查找出与该目标参数的标识信息对应的参数值;
所述将所述至少一种目标参数的参数值返回给所述客户端,包括:
将遍历到的每种目标参数和查找出的对应的参数值作为一个字段信息,将得到的所有字段信息返回给所述客户端。
在一种可能的实施方式中,所述目标参数筛选信息中还包含预先设置的、用于表征需要进行目标参数筛选的字段标识。
在一种可能的实施方式中,所述用于表征需要进行目标参数筛选的字段标识的类型为数组。
本申请实施例还提供另一种页面渲染方法,应用于客户端,所述方法包括:
根据渲染页面需要的至少一种目标参数的标识信息及所述目标参数所属的目标参数组的标识信息,生成页面渲染信息获取请求;其中,所述页面渲染信息获取请求中包含所述目标参数组的标识信息以及目标参数筛选信息,所述目标参数筛选信息中包含所述至少一种目标参数的标识信息;
将所述页面渲染信息获取请求发送至服务器,用于所述服务器根据所述页面渲染信息获取请求返回所述至少一种目标参数的参数值至所述客户端;
根据所述服务器返回的所述至少一种目标参数的参数值,进行页面渲染。
本申请实施例还提供了一种页面渲染装置,用于服务器,所述装置包括:
获取模块,用于获取客户端发送的页面渲染信息获取请求,所述页面渲染信息获取请求中携带有目标参数组的标识信息,以及目标参数筛选信息,所述目标参数筛选信息中包含需要筛选出的至少一种目标参数的标识信息;
筛选模块,用于根据所述目标参数组的标识信息,以及所述目标参数筛选信息,从查找到的目标参数组中各种参数的参数值中,筛选出至少一种目标参数的参数值;
第一发送模块,用于将所述至少一种目标参数的参数值返回给所述客户端,用于所述客户端根据所述至少一种目标参数的参数值,进行页面渲染。
在一种可能的实施方式中,所述筛选模块具体用于:
遍历所述目标参数筛选信息中需要筛选的每种目标参数的标识信息,从所述目标参数组中各种参数的参数值中,查找出与该目标参数的标识信息对应的参数值;
所述第一发送模块具体用于:
将遍历到的每种目标参数和查找出的对应的参数值作为一个字段信息,将得到的所有字段信息返回给所述客户端。
在一种可能的实施方式中,所述目标参数筛选信息中还包含预先设置的、用于表征需要进行目标参数筛选的字段标识。
在一种可能的实施方式中,所述用于表征需要进行目标参数筛选的字段标识的类型为数组。
本申请实施例还提供另一种页面渲染装置,用于客户端,所述装置包括:
生成模块,用于根据渲染页面需要的至少一种目标参数的标识信息及所述目标参数所属的目标参数组的标识信息,生成页面渲染信息获取请求;其中,所述页面渲染信息获取请求中包含所述目标参数组的标识信息以及目标参数筛选信息,所述目标参数筛选信息中包含所述至少一种目标参数的标识信息;
第二发送模块,用于将所述页面渲染信息获取请求发送至服务器,所述页面渲染信息获取请求用于所述服务器根据所述页面渲染信息获取请求返回所述至少一种目标参数的参数值至所述客户端;
渲染模块,用于根据所述服务器返回的所述至少一种目标参数的参数值,进行页面渲染。
本申请实施例还提供一种电子设备,包括:处理器、存储器和总线,所述存储器存储有所述处理器可执行的机器可读指令,当电子设备运行时,所述处理器与所述存储器之间通过总线通信,所述机器可读指令被所述处理器执行时执行如上述的页面渲染方法的步骤。
本申请实施例还提供一种计算机可读存储介质,该计算机可读存储介质上存储有计算机程序,该计算机程序被处理器运行时执行如上述的页面渲染方法的步骤。
本申请实施例提供的页面渲染方法及装置,首先,获取客户端发送的页面渲染信息获取请求,其中携带有目标参数组的标识信息,以及目标参数筛选信息,目标参数筛选信息中包含需要筛选出的至少一种目标参数的标识信息;然后,根据目标参数组的标识信息,以及目标参数筛选信息,从查找到的目标参数组中各种参数的参数值中,筛选出至少一种目标参数的参数值;最后,将至少一种目标参数的参数值返回给客户端,客户端直接根据返回的至少一种目标参数的参数值,进行页面渲染。可见,本申请通过页面渲染信息获取请求中的目标参数组的标识信息和目标参数筛选信息,从查找到的目标参数组中各种参数的参数值中,筛选进行页面渲染所需要的目标参数的参数值,不需要传输目标参数组中的全量参数信息,能够有效减少客户端与服务器之间的数据传输,提高页面渲染的效率,降低通信资源的浪费。
为使本申请的上述目的、特征和优点能更明显易懂,下文特举较佳实施例,并配合所附附图,作详细说明如下。
附图说明
为了更清楚地说明本申请实施例的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,应当理解,以下附图仅示出了本申请的某些实施例,因此不应被看作是对范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。
图1示出了本申请实施例所提供的一种页面渲染方法的流程图;
图2示出了本申请实施例所提供的另一种页面渲染方法的流程图;
图3示出了本申请实施例所提供的一种页面渲染装置的结构示意图;
图4示出了本申请实施例所提供的另一种页面渲染装置的结构示意图;
图5示出了本申请实施例所提供的一种电子设备的结构示意图。
具体实施方式
为使本申请实施例的目的、技术方案和优点更加清楚,下面将结合本申请实施例中附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。通常在此处附图中描述和示出的本申请实施例的组件可以以各种不同的配置来布置和设计。因此,以下对在附图中提供的本申请的实施例的详细描述并非旨在限制要求保护的本申请的范围,而是仅仅表示本申请的选定实施例。基于本申请的实施例,本领域技术人员在没有做出创造性劳动的前提下所获得的每个其他实施例,都属于本申请保护的范围。
首先,对本申请可适用的应用场景进行介绍。本申请可应用于浏览器或客户端的页面渲染,浏览器或客户端可以通过API(Application Programming Interface,应用程序接口),向服务器请求渲染页面所需要的参数
经研究发现,在页面渲染的过程中,客户端需要向服务器请求各种参数信息,比如,在个人博客的页面中,需要展示博主的一些信息,比如展示博主的姓名、性别、年龄等,客户端需要向服务器请求博主对应的参数信息,服务器会将博主的全量参数信息发送给客户端,然而,全量参数信息中包含博主的各种信息,实际上,在客户端的页面中只需要展示博主的一部分信息,比如只需要展示博主的姓名、性别,而服务器无法识别客户端需要的具体参数信息,客户端与服务器之间存在大量的无效数据传输,浪费了通信资源,页面渲染的效率也很低。
基于此,本申请实施例提供了一种页面渲染方法,以减少服务器与客户端之间传输的数据量,提高页面渲染的效率,避免资源浪费。
请参阅图1,图1为本申请实施例所提供的一种页面渲染方法的流程图。如图1中所示,本申请实施例提供的页面渲染方法,应用于服务器,包括:
S101、获取客户端发送的页面渲染信息获取请求,所述页面渲染信息获取请求中携带有目标参数组的标识信息,以及目标参数筛选信息,所述目标参数筛选信息中包含需要筛选出的至少一种目标参数的标识信息。
该步骤中,客户端在需要进行页面渲染时,可以根据渲染页面所需要的参数信息,生成页面渲染信息获取请求,并将页面渲染信息获取请求通过服务器对应的应用程序接口(Application Program Interface,API),发送至服务器,服务器获取到客户端发送的页面渲染信息获取请求后,即可根据页面渲染信息获取请求确定客户端需要的参数信息。
这里,客户端在进行页面渲染时,可能同时需要多组来源不同的参数信息,可以生成多个与每种来源对应的页面渲染信息获取请求,并通过其对应的API接口,发送至其对应的服务器。
其中,目标参数组可以是客户端在进行页面渲染时,所需要的目标参数信息所属的目标参数组,比如,若渲染需要的目标参数信息是用户的头像信息及年龄信息,则目标参数组可以为用户的个人信息集合,可以包括用户的头像信息、年龄信息、职业信息、姓名信息等等。每个目标参数组可以对应一个或多个标识信息,标识信息可以是该目标参数组的ID信息等,可以通过数组或字符串等形式表示;目标参数的标识信息可以是该目标参数的类型、名称、编号等。
具体的,页面渲染信息获取请求可以以下述方式表示:
其中,usekey表示渲染需要使用的目标参数,usekey所在的一行参数为目标参数筛选信息,a、b分别为两个目标参数的标识信息,id表示渲染需要使用的目标参数所属的目标参数组,1为目标参数组的标识信息。
S102、根据所述目标参数组的标识信息,以及所述目标参数筛选信息,从查找到的目标参数组中各种参数的参数值中,筛选出至少一种目标参数的参数值。
该步骤中,服务器可以先识别出目标参数组的标识信息,并根据目标参数组的标识信息,从服务器的数据库中查找目标参数组;在查找到目标参数组之后,根据目标参数筛选信息中的目标参数的标识信息,从目标参数组中筛选出目标参数,并将目标参数的参数值返回给客户端。
具体的,目标参数组可以以下述方式表示:
其中,name、age、a、b分别表示目标参数组中的参数,也是该参数的标识信息,1、Jack、21、0、1分别为上述参数的参数值。
S103、将所述至少一种目标参数的参数值返回给所述客户端,用于所述客户端根据所述至少一种目标参数的参数值,进行页面渲染。
具体的,经过筛选后,发送给客户端的目标参数的参数值,可以通过下述方式标识:
其中,a、b为目标参数组中目标参数的标识信息,0、1分别为a、b的参数值。
其中,参数值根据参数的不同类型,可以是不同形式的序列,比如,若一参数的类型是“姓名”,则其表现形式可以是文字形式,如上述的“Jakc”;若一参数的类型是“年龄”,则可以以数字形式表示。
这样,通过从目标参数组中筛选出渲染所需要的目标参数,再将筛选出的目标参数的值发送至客户端,相比于发送全量参数的方式,极大地减少了传输的数据量,客户端在进行页面渲染时,由于只接收了需要的参数,渲染的效率也得到了明显的提高。
在一种可能的实施方式中,所述根据所述目标参数组的标识信息,以及所述目标参数筛选信息,从查找到的目标参数组中各种参数的参数值中,筛选出至少一种目标参数的参数值,包括:
遍历所述目标参数筛选信息中需要筛选的每种目标参数的标识信息,从所述目标参数组中各种参数的参数值中,查找出与该目标参数的标识信息对应的参数值;
所述将所述至少一种目标参数的参数值返回给所述客户端,包括:
将遍历到的每种目标参数和查找出的对应的参数值作为一个字段信息,将得到的所有字段信息返回给所述客户端。
该步骤中,服务器可以先根据目标参数组的标识信息从数据库中查找到目标参数组,再遍历目标参数筛选信息中需要筛选的每种目标参数的标识信息,然后根据遍历到的目标参数的标识信息,对目标参数组中各种参数的参数值进行筛选,得到目标参数的标识信息对应的参数值,即目标参数的参数值。
在查找到上述参数值后,可以将其以字段信息的形式发送至客户端,客户端能够识别字段形式的参数值,并利用接收到的字段形式的参数值进行页面渲染。
其中,字段信息可以包括字段名和字段值,比如,在上述返回给客户端的参数值的示例中,a、b即为字段名,0、1即为字段值,字段名可以为目标参数的参数名称或参数类型,字段值为目标参数的参数值。
在一种可能的实施方式中,所述目标参数筛选信息中还包含预先设置的、用于表征需要进行目标参数筛选的字段标识。
具体的,可以在服务器和客户端之间进行schema约定,通过预先设置的、用于表征需要进行目标参数筛选的字段标识,作为目标参数识别的根据,在上述页面渲染信息的示例中,目标参数筛选信息中的“usekey”即为上述字段标识。该字段标识表示需要进行目标参数筛选,其后的字段值即为需要筛选的目标参数的标识信息。
在一种可能的实施方式中,所述用于表征需要进行目标参数筛选的字段标识的类型为数组。
请参阅图2,图2为本申请实施例所提供的另一种页面渲染方法的流程图。如图2中所示,本申请实施例提供的页面渲染方法,应用于客户端,包括:
S201、根据渲染页面需要的至少一种目标参数的标识信息及所述目标参数所属的目标参数组的标识信息,生成页面渲染信息获取请求;其中,所述页面渲染信息获取请求中包含所述目标参数组的标识信息以及目标参数筛选信息,所述目标参数筛选信息中包含所述至少一种目标参数的标识信息。
该步骤中,客户端可以根据要渲染的页面的具体内容,确定需要的目标参数的标识信息,以及包含目标参数的目标参数组的标识信息,并根据目标参数的标识信息及所述目标参数所属的目标参数组的标识信息,生成页面渲染信息获取请求。
S202、将所述页面渲染信息获取请求发送至服务器,用于所述服务器根据所述页面渲染信息获取请求返回所述至少一种目标参数的参数值至所述客户端。
该步骤中,可以通过服务器对应的API接口,将页面渲染信息获取请求发送给服务器。
S203、根据所述服务器返回的所述至少一种目标参数的参数值,进行页面渲染。
本申请实施例提供的页面渲染方法,首先,获取客户端发送的页面渲染信息获取请求,其中携带有目标参数组的标识信息,以及目标参数筛选信息,目标参数筛选信息中包含需要筛选出的至少一种目标参数的标识信息;然后,根据目标参数组的标识信息,以及目标参数筛选信息,从查找到的目标参数组中各种参数的参数值中,筛选出至少一种目标参数的参数值;最后,将至少一种目标参数的参数值返回给客户端,客户端直接根据返回的至少一种目标参数的参数值,进行页面渲染。可见,本申请通过页面渲染信息获取请求中的目标参数组的标识信息和目标参数筛选信息,从查找到的目标参数组中各种参数的参数值中,筛选进行页面渲染所需要的目标参数的参数值,不需要传输目标参数组中的全量参数信息,能够有效减少客户端与服务器之间的数据传输,提高页面渲染的效率,降低通信资源的浪费。
请参阅图3、图4,图3为本申请实施例所提供的一种页面渲染装置的结构示意图,图4为本申请实施例所提供的另一种页面渲染装置的结构示意图。如图3中所示,所述页面渲染装置300用于服务器,包括:
获取模块310,用于获取客户端发送的页面渲染信息获取请求,所述页面渲染信息获取请求中携带有目标参数组的标识信息,以及目标参数筛选信息,所述目标参数筛选信息中包含需要筛选出的至少一种目标参数的标识信息;
筛选模块320,用于根据所述目标参数组的标识信息,以及所述目标参数筛选信息,从查找到的目标参数组中各种参数的参数值中,筛选出至少一种目标参数的参数值;
第一发送模块330,用于将所述至少一种目标参数的参数值返回给所述客户端,用于所述客户端根据所述至少一种目标参数的参数值,进行页面渲染。
在一种可能的实施方式中,所述筛选模块320具体用于:
遍历所述目标参数筛选信息中需要筛选的每种目标参数的标识信息,从所述目标参数组中各种参数的参数值中,查找出与该目标参数的标识信息对应的参数值;
所述第一发送模块330具体用于:
将遍历到的每种目标参数和查找出的对应的参数值作为一个字段信息,将得到的所有字段信息返回给所述客户端。
在一种可能的实施方式中,所述目标参数筛选信息中还包含预先设置的、用于表征需要进行目标参数筛选的字段标识。
在一种可能的实施方式中,所述用于表征需要进行目标参数筛选的字段标识的类型为数组。
如图4所示,所述页面渲染装置400用于客户端,包括:
生成模块,用于根据渲染页面需要的至少一种目标参数的标识信息及所述目标参数所属的目标参数组的标识信息,生成页面渲染信息获取请求;其中,所述页面渲染信息获取请求中包含所述目标参数组的标识信息以及目标参数筛选信息,所述目标参数筛选信息中包含所述至少一种目标参数的标识信息;
第二发送模块,用于将所述页面渲染信息获取请求发送至服务器,所述页面渲染信息获取请求用于所述服务器根据所述页面渲染信息获取请求返回所述至少一种目标参数的参数值至所述客户端;
渲染模块,用于根据所述服务器返回的所述至少一种目标参数的参数值,进行页面渲染。
本申请实施例提供的页面渲染装置,首先,获取客户端发送的页面渲染信息获取请求,其中携带有目标参数组的标识信息,以及目标参数筛选信息,目标参数筛选信息中包含需要筛选出的至少一种目标参数的标识信息;然后,根据目标参数组的标识信息,以及目标参数筛选信息,从查找到的目标参数组中各种参数的参数值中,筛选出至少一种目标参数的参数值;最后,将至少一种目标参数的参数值返回给客户端,客户端直接根据返回的至少一种目标参数的参数值,进行页面渲染。可见,本申请通过页面渲染信息获取请求中的目标参数组的标识信息和目标参数筛选信息,从查找到的目标参数组中各种参数的参数值中,筛选进行页面渲染所需要的目标参数的参数值,不需要传输目标参数组中的全量参数信息,能够有效减少客户端与服务器之间的数据传输,提高页面渲染的效率,降低通信资源的浪费。
请参阅图5,图5为本申请实施例所提供的一种电子设备的结构示意图。如图5中所示,所述电子设备500包括处理器510、存储器520和总线530。
所述存储器520存储有所述处理器510可执行的机器可读指令,当电子设备500运行时,所述处理器510与所述存储器520之间通过总线530通信,所述机器可读指令被所述处理器510执行时,可以执行如上述图1以及图2所示方法实施例中的页面渲染方法的步骤,具体实现方式可参见方法实施例,在此不再赘述。
本申请实施例还提供一种计算机可读存储介质,该计算机可读存储介质上存储有计算机程序,该计算机程序被处理器运行时可以执行如上述图1以及图2所示方法实施例中的页面渲染方法的步骤,具体实现方式可参见方法实施例,在此不再赘述。
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统、装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
在本申请所提供的几个实施例中,应该理解到,所揭露的系统、装置和方法,可以通过其它的方式实现。以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,又例如,多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些通信接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。
所述功能如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个处理器可执行的非易失的计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(Read-OnlyMemory,ROM)、随机存取存储器(Random Access Memory,RAM)、磁碟或者光盘等各种可以存储程序代码的介质。
最后应说明的是:以上所述实施例,仅为本申请的具体实施方式,用以说明本申请的技术方案,而非对其限制,本申请的保护范围并不局限于此,尽管参照前述实施例对本申请进行了详细的说明,本领域的普通技术人员应当理解:任何熟悉本技术领域的技术人员在本申请揭露的技术范围内,其依然可以对前述实施例所记载的技术方案进行修改或可轻易想到变化,或者对其中部分技术特征进行等同替换;而这些修改、变化或者替换,并不使相应技术方案的本质脱离本申请实施例技术方案的精神和范围,都应涵盖在本申请的保护范围之内。因此,本申请的保护范围应以权利要求的保护范围为准。