网页文件发送方法、网页渲染方法及装置、网页渲染系统与流程

文档序号:12733817阅读:238来源:国知局
网页文件发送方法、网页渲染方法及装置、网页渲染系统与流程

本申请涉及互联网技术领域,特别涉及一种网页文件发送方法、网页渲染方法及装置、网页渲染系统



背景技术:

现如今,通过浏览器或应用APP的客户端访问各种网页已成为人们获取信息的渠道之一。目前,人们所使用的各种终端往往具备不同的设备信息(如:终端屏幕的大小),而针对终端所具备的设备信息的不同,可在终端上展示不同的网页样式。例如,新浪网(http://www.sina.com.cn/)在手机和电脑上是以不同的网页样式进行展示的。

一般地,终端可通过从服务器获取不同的网页文件,来渲染不同的网页样式,上述网页文件可包括:CSS(Cascading Style Sheets,层叠样式表)文件、图片等。现有技术中,在通过浏览器或客户端请求网页的过程中,首先,由终端向服务器发送网页请求,随后,服务器响应于所述网页请求,向终端返回在网页加载过程中可能被使用的网页文件。终端在接收到服务器返回的网页文件之后,需要检测到自身的设备信息,并利用媒体查询(media query)方法,确定与所述设备信息相适配的网页样式以及渲染该网页样式所需加载的网页文件。最终,终端可以从上述服务器返回的网页文件中,选取当前所需加载的网页文件(如:CCS文件、图片等)并利用这些网页文件进行网页的渲染。

上述现有技术至少存在如下问题:

在终端渲染网页之前,需要利用媒体查询方法确定与该终端的设备信息相适配的网页样式以及渲染该网页样式所需加载的网页文件,并从服务器返回的网页文件中选取当前所需加载的网页文件。由于终端在渲染网页之前执行的上述步骤需要消耗终端一定的处理资源,在一定程度上影响终端的性能。



技术实现要素:

本申请实施例的目的是提供一种网页文件发送方法、网页渲染方法及装置、网页渲染系统,以解决现有技术中存在的上述问题。

为解决上述技术问题,本申请实施例提供的网页文件发送方法、网页渲染方法及装置、网页渲染系统是这样实现的:

一种网页文件发送方法,包括:

服务器接收终端发送的携带与所述终端对应的用户代理信息的网页请求;

所述服务器根据所述用户代理信息,确定与所述用户代理信息对应的所述终端的设备信息;

所述服务器获取与所述设备信息对应的网页文件并向所述终端发送。

一种网页渲染方法,包括:

终端向服务器发送携带与所述终端对应的用户代理信息的网页请求;

所述终端接收所述服务器返回的与所述终端的设备信息对应的网页文件;所述设备信息是所述服务器根据所述用户代理信息确定的;

所述终端利用与所述设备信息对应的网页文件进行网页的渲染。

一种网页文件发送装置,包括:接收单元,确定单元,获取单元及发送单元;所述接收单元接收终端发送的携带与所述终端对应的用户代理信息的网页请求;所述确定单元根据所述用户代理信息,确定与所述用户代理信息对应的所述终端的设备信息;所述获取单元获取与所述设备信息对应的网页文件;所述发送单元向所述终端发送与所述设备信息对应的网页文件。

一种网页渲染装置,包括:发送单元,接收单元和渲染单元;所述发送单元向服务器发送携带与终端对应的用户代理信息的网页请求;所述接收单元接收所述服务器返回的与所述终端的设备信息对应的网页文件;所述设备信息是所述服务器根据所述用户代理信息确定的;所述渲染单元利用与所述设备信息对应的网页文件进行网页的渲染。

一种网页渲染系统,包括服务器、第一数据库和第二数据库,所述第一数据库存储有用户代理信息与设备信息的映射关系,所述第二数据库存储有与设备信息对应的网页文件,所述服务器接收终端发送的携带用户代理信息的网页请求,并从所述第一数据库中查询与所述网页请求中携带的用户代理信息对应的设备信息,所述服务器从所述第二数据库获取与所述设备信息对应的网页文件,并将获取的所述网页文件发送至终端。

本申请实施例采用的上述至少一个技术方案能够达到以下有益效果:

在终端请求网页的过程中,服务器根据终端发送的网页请求所携带的用户代理信息,确定与该用户代理信息对应的所述终端的设备信息,根据设备信息确定与之对应的各种网页文件并向终端发送,以使得终端利用与设备信息对应的上述网页文件进行网页的渲染。相较于现有技术,在网页渲染之前,确定终端的设备信息并确定与设备信息对应的网页文件均是由服务器来执行的,避免了由终端执行上述过程,从而避免因终端执行上述步骤而过多消耗终端的处理资源的问题,提升终端的性能。

附图说明

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

图1为本申请一实施例提供的网页请求过程的流程图;

图2示出了在不同终端上显示不同的网页样式的示例;

图3为本申请一实施例提供的以服务器为主体的网页文件发送方法的流程图;

图4为本申请一实施例提供的网页渲染装置和网页文件发送装置的示意图。

具体实施方式

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

目前,网页(Web)页面可以在各种浏览器或客户端或应用APP的客户端中进行展示,而浏览器或客户端载入各种网页文件、并利用所述网页文件渲染网页页面的速度,直接影响着用户的使用体验。网页页面的渲染过程是指:浏览器或客户端根据CSS(Cascading Style Sheets,层叠样式表)定义的规则,将服务器(Web服务器或应用APP的服务端)返回的HTML(Hyper Text Mark-up Language,超文本标记语言)代码显示在浏览器或客户端的窗口中的过程。

针对现有技术中存在的服务器可能将部分不需被加载的网页文件返回至所述终端的问题,本文提出如下技术方案以至少解决这一问题。

图1为本申请一实施例提供的网页请求的过程,该过程由终端和服务器来共同完成,用户通过在所述终端上的浏览器或客户端中输入某网址(域名)来请求访问某网页,所述服务器是与上述终端所请求访问的网址对应的服务器。本实施例中,上述网页请求过程包括如下步骤:

步骤S101:终端向服务器发送携带与所述终端对应的用户代理信息的网页请求。

一般地,用户可以通过在终端的浏览器或客户端中输入网址来请求访问某网页。在输入网址之后,终端需要向与所述网址对应的服务器发送网页请求(即HTTP请求)。在发送上述网页请求之前,浏览器或客户端首先需要通过网络与Web服务器建立连接,该连接可以通过TCP协议来完成的。一旦终端与服务器建立了连接,则浏览器或客户端可以向服务器发送网页请求。所述网页请求可以包括:请求方法URI协议/版本、请求头(Request Header)信息、请求正文。其中,请求头信息可包含一些与客户端环境对应的信息和与请求正文对应的信息。例如,请求头信息可以声明浏览器或客户端所用的语言、请求正文的长度等。

以下是一个网页请求的例子:

GET/sample.jspHTTP/1.1

Accept:image/gif.image/jpeg,*/*

Accept-Language:zh-cn

Connection:Keep-Alive

Host:localhost

User-Agent:Mozila/4.0(compatible;MSIE5.01;Window NT5.0)

Accept-Encoding:gzip,deflate

username=jinqiao&password=1234

在以上例子中,网页请求的第一行是“方法URL议/版本”:GET/sample.jsp HTTP/1.1;请求头(Request Header)信息是:

Accept:image/gif.image/jpeg.*/*

Accept-Language:zh-cn

Connection:Keep-Alive

Host:localhost

User-Agent:Mozila/4.0(compatible:MSIE5.01:Windows NT5.0)

Accept-Encoding:gzip,deflate

请求头信息和请求正文之间一般可以空一行,表示请求头信息已经结束,接下来的是请求正文。在上述例子中,请求正文可以包含用户提交的查询字符串信息:username=jinqiao&password=1234。在以上例子中,请求正文只有一行内容。当然,在实际应用中,请求正文可以包含更多的内容。

本申请实施例中,上述网页请求包括用户代理(User-Agent,UA)信息,用户代理信息是指上述终端的浏览器或客户端所特有的标识信息,包括:硬件平台、系统软件、应用软件和用户个人偏好等。一种移动终端的用户代理信息的示例如下:

Mozilla/5.0(Linux;U;Android 4.1.1;zh-cn;GT-I9100Build/JRO03H;CyanogenMod-10)AppleWebKit/534.30(KHTML,like Gecko)Version/4.0Mobile Safari/534.30

步骤S102:服务器根据所述用户代理信息,确定与所述用户代理信息对应的设备信息。

在网页请求的过程中,对于具备不同设备信息的终端,所需渲染的网页样式也不尽相同,也就是说,最终在终端的浏览器或客户端上渲染形成的网页样式需要依据该终端的设备信息来确定。本申请实施例中,需要服务器在接收到上述网页请求之后,确定与发送上述网页请求的终端对应的设备信息。关于所述设备信息,包括但不限于:终端的显示器信息、终端的其他硬件信息、终端的操作系统信息等。其中,上述显示器信息可以包括屏幕的分辨率信息、或像素密度信息、或屏幕的大小等。总之,根据终端的设备信息,可以渲染得到与所述设备信息相适配的网页样式。

图2示出了在不同终端上显示不同的网页样式的示例。在该图2中,终端10、20分别具有不同的设备信息,例如屏幕的分辨率不同。其中,假设某网页包括网页模块A、B、C,所述网页模块可以例如是图片、文字、按键等。可以看出,在终端10、20请求该网页时,所渲染得到的网页样式可以不相同,不同的网页样式可以体现在文字的大小,网页模块的位置和布局,等等。

本申请一实施例中,在上述步骤S102之前,所述方法还包括如下步骤:

服务器预先生成用户代理信息和设备信息的映射关系,生成的映射关系可以存储于Web服务器的数据库中。

举例而言:与用户代理信息:“Mozilla/5.0(Linux;U;Android 4.1.1;zh-cn;GT-I9100Build/JRO03H;CyanogenMod-10)AppleWebKit/534.30(KHTML,like Gecko)Version/4.0Mobile Safari/534.30”相映射的设备信息为:480px*800px;与用户代理信息:“Mozilla/5.0(Windows;U;Windows NT 5.1;en-US;rv:0.9.4)Gecko/20011128Netscape6/6.2.1”相映射的设备信息为:1920px*1080px;等等。

相应地,上述步骤S102具体包括:

服务器根据预先生成的用户代理信息和设备信息的映射关系,查找与所述用户代理信息相映射的所述终端的设备信息。

通过上述方法,服务器在接收到终端(浏览器或客户端)发送的网页请求之后,可以从该网页请求中提取所携带的用户代理信息,并依据该用户代理信息查找预先形成的数据库,以查找到与该用户代理信息相映射的设备信息。一般地,数据库中针对每一个用户代理信息,会存在唯一与该用户代理信息相映射的设备信息(如显示器信息)。当然,也存在因数据库中没有存在相应的记录,而导致无法查找到与当前用户代理信息相映射的设备信息的可能性,对于这一情况,将在下文具体介绍解决方案。

值得一提的是,本申请其他实施例中,在上述步骤S102之前,所述方法还可以包括如下步骤:

服务器将设备信息和特征信息的映射关系进行存储;其中,所述特征信息是所述用户代理信息中包含的。上述特征信息可以是如下任意一种:设备品牌型号信息、设备的操作系统信息等。举例来说,一条用户代理信息是:Mozilla/5.0(Linux;U;Android 4.1.1;zh-cn;GT-I9100Build/JRO03H;CyanogenMod-10)AppleWebKit/534.30(KHTML,like Gecko)Version/4.0Mobile Safari/534.30,则设备品牌型号信息为:“GT-I9100”,设备的操作系统信息为:“Android 4.1.1”。需要说明的是,上述设备信息和特征信息的映射关系可以是由服务器预先生成的。或者,由服务器通过自学习过程逐渐产生。再或者,由管理员来配置上述设备信息和特征信息的映射关系(即不一定由服务器生成)。

相应地,以上步骤S102可以具体包括如下步骤:

服务器提取所述用户代理信息中包含的特征信息;服务器根据预先生成的设备信息和特征信息的映射关系,确定与所述特征信息对应的所述终端的设备信息。另外,服务器可以通过分析用户代理信息,得到与用户代理信息对应的设备信息。例如,服务器通过提取用户代理信息中所携带的设备品牌型号信息:“GT-I9100”,便可以确定与“GT-I9100”对应的设备信息(如:屏幕的像素信息是:480px*800px,屏幕尺寸信息是:4.3英寸);再例如,服务器通过提取用户代理信息中所携带的操作系统信息:“Android 4.1.1”,便可以确定与“Android4.1.1”对应的设备信息的一个可能的范围区间(如:屏幕的大小是:3.0~5.3英寸,屏幕的像素信息是:(480px~800px)*(800px~1280px))。

步骤S103:服务器获取与设备信息对应的网页文件并向所述终端发送。

所述网页文件可以包括:HTML文件,CSS文件,JS(JavaScript)文件,图片,等等。网页页面一般是基于上述各种网页文件来进行渲染的。另外,上述网页文件也可以称为网页资源,该网页资源可以包括静态资源和动态资源。

本申请实施例中,在上述步骤S103之前,所述方法还包括如下步骤:

a)所述服务器根据所述设备信息,确定与所述设备信息对应的网页文件的文件标识,其中,所述文件标识可以例如是网页文件的URL(Uniform Resource Locator,统一资源定位符)或者文件名,所述URL例如:

*图片:

“HTTP://static.ak.fbcdn.net/rsrc.php/z12E0/hash/8q2anwu7.gif”

“HTTP://static.ak.fbcdn.net/rsrc.php/zBS5C/hash/7hwy7at6.gif”

*CSS文件:

“HTTP://static.ak.fbcdn.net/rsrc.php/z448Z/hash/2plh8s4n.css”

“HTTP://static.ak.fbcdn.net/rsrc.php/zANE1/hash/cvtutcee.css”

*JS文件:

“HTTP://static.ak.fbcdn.net/rsrc.php/zEMOA/hash/c8yzb6ub.js”

“HTTP://static.ak.fbcdn.net/rsrc.php/z6R9L/hash/cq2lgbs8.js”

又例如:当终端屏幕的分辨率的宽度(即设备信息)是400px时,确定与该设备信息对应的CSS文件(网页文件之一)的文件名(即文件标识)为:“400.css”;当终端屏幕的分辨率的宽度(即设备信息)是800px时,确定与该设备信息对应的CSS文件的文件名(即文件标识)为:“800.css”。

b)所述服务器向所述终端发送包含所述文件标识的文件(即HTML文件)。

一般地,服务器(Web服务器或应用APP的服务端)在接收到终端的网页请求后,响应于终端发送的网页请求(HTTP请求),需要向终端返回相应的HTTP响应(HTTP Response),所述HTTP响应(即上述HTML文件)可以包括:协议状态版本代码描述信息,响应头(Response Header)信息及响应正文。其中,所返回的HTML响应可包括上述确定的文件标识,如,所需应用的CSS文件的URL或文件名,所需应用的图片的URL,等等。其中,所述HTML文件可以只包含所述浏览器或客户端在后续网页渲染过程中所需要采用的网页文件的文件标识。承上述例子,若当前终端的屏幕分辨率是400px*800px,则渲染过程需要采用的CSS文件应该是“400.css”,服务器返回的HTML文件应该包含:<link href=“400.css”/>这段信息;若当前终端的屏幕分辨率是800px*1280px,则渲染过程需要采用的CSS文件应该是“800.css”,服务器返回的HTML文件应该包含:<link href=“800.css”/>这段信息。也就是说,服务器可以根据所确定的设备信息的不同,向终端返回包含不同的网页文件的文件标识的HTML文件,所返回的HTML文件中一般不包含其余不需要被加载的网页文件的文件标识。承上述例子,现有技术中,无论终端的屏幕分辨率是“400px*800px”,还是“800px*1280px”,都需向所述终端返回上述CSS文件:“400.css”和“800.css”,对于屏幕分辨率为:“400px*800px”的终端而言,上述CSS文件:“800.css”是不需被加载的网页文件(即无需在网页渲染过程中使用的网页文件)。相较于现有技术中,本申请实施例可以针对终端的屏幕分辨率(设备信息)的不同,有针对性地将与设备信息对应的网页文件返回至终端。

相应地,基于上述内容,上述步骤S103具体包括如下步骤:

c)服务器接收所述终端发送的携带所述文件标识的文件获取请求。

一般,浏览器或客户端在接收到服务器返回的HTML文件之后,可以通过向服务器发送相应的文件获取请求的方式,来获取嵌入当前网页样式的各种网页文件(如:CSS文件及图片等),所述文件获取请求携带网页文件的URL。

d)服务器响应于所述文件获取请求,向所述终端发送与所述文件标识对应的网页文件。

值得说明的是,本申请其他实施例中,服务器可以确定到与当前设备信息对应的所需渲染的网页样式,并相应地获取到当前网页样式所需应用到的各种网页文件,并直接将获取到的各种网页文件返回到所述终端上进行网页的渲染,也就是说,终端(浏览器或客户端)在向服务器发送上述HTTP请求之后,可以不用再向上述服务器发送用以获取各种网页文件的文件获取请求。

步骤S104:终端接收与设备信息对应的网页文件,并利用接收到的网页文件进行网页的渲染,以将相应的网页样式显示于所述终端的屏幕上。由于网页渲染过程属于本领域所习知的技术,本文不再予以详述。

图3为本申请一实施例提供的以服务器为主体的网页文件发送方法的流程图。参照上述图1所介绍的实施例,本申请一实施例中,若以服务器的角度来实施本技术方案,该网页文件发送方法包括如下步骤:

S201:服务器接收终端发送的携带与终端对应的用户代理信息的网页请求。

S202:服务器根据用户代理信息,确定与用户代理信息对应的终端的设备信息。

S204:服务器获取与所述设备信息对应的网页文件并向所述终端发送。

以上步骤S201可以参照上述步骤S101的内容,以上步骤S202可以参照上述步骤S102的内容,以上步骤S204可以参照上述步骤S103的内容,本文不再予以赘述。

本申请可选的实施例中,上述网页文件发送方法还包括:

步骤S203:判断是否查找到与用户代理信息对应的设备信息。若查找到,则进入步骤S204;若没有查找到,则进入下述步骤S205。

步骤S205:服务器向终端返回与网页请求对应的基本资源包。

所述基本资源包一般可以包括所有可能渲染的网页样式所需加载的各种网页文件,也就是说,具有任何设备信息的终端在接收到该基本资源包之后,均可以根据该基本资源包,选取到与自身设备信息相适配的网页样式所需加载的网页文件。终端在接收到上述基本资源包之后,可以采集到自身的设备信息(如显示器信息),然后动态确定与自身的设备信息相适合的网页样式,以及与该网页样式对应的所需加载的各种网页文件,并从上述基本资源包内选取所需加载的网页文件,最终利用选取的网页文件进行网页的渲染。

步骤S206:服务器接收终端返回的与该终端对应的设备信息和用户代理信息。其中,所述设备信息是所述终端在利用所述基本资源包进行网页加载时获取到的。

本实施例中,终端(浏览器或客户端)在进行网页渲染的同时,可以通过一定的方法(如JavaScript)动态采集到当前终端的设备信息,如:屏幕的分辨率信息,屏幕的像素密度信息,屏幕的大小信息,所采用的操作系统信息,硬件平台信息等等。

步骤S207:服务器生成返回的设备信息和用户代理信息的映射关系并存储。

终端可向服务器发送一携带上述设备信息和用户代理信息的请求命令,以使得服务器将采集到设备信息和用户代理信息形成一定的映射关系,并存储到数据库中。通过以上步骤S205~S207,可以在查询不到与用户代理信息对应的设备信息时,通过终端采集的方式,来对当前的数据库(用户代理信息和设备信息的对应关系)中的数据进行补充或完善,从而实现数据库的“自学习过程”。通过上述“自学习过程”,使得在服务器后续查询数据库的过程中,就不会存在查找不到与用户代理信息对应的设备信息的问题了,即总能查找到相匹配的结果,从而使得服务器的执行效率能够不断提升。

上述图3所介绍的实施例是从服务器的角度说明了本申请的技术方案,实际上,本申请还可以从终端的角度进行实施,并同样能够解决上述问题。参照上述图1所介绍的实施例,在本申请一实施例提供的一种网页渲染方法,包括如下步骤:

终端向服务器发送携带与所述终端对应的用户代理信息的网页请求。

所述终端接收所述服务器返回的与所述终端的设备信息对应的网页文件。其中,所述设备信息是所述服务器根据所述用户代理信息确定的。

终端利用与所述设备信息对应的网页文件进行网页的渲染。

承上所述,在上述各实施例提供的网页文件发送方法、网页渲染方法中,服务器根据终端发送的网页请求所携带的用户代理信息,确定与该用户代理信息对应的所述终端的设备信息,根据设备信息确定与之对应的各种网页文件并向终端发送,以使得终端利用与设备信息对应的上述网页文件进行网页的渲染。相较于现有技术,由于服务器在向终端返回网页渲染过程所需的网页文件之前,需要确定终端的设备信息,并获取与该设备信息对应的网页文件,从而使得最终服务器向终端返回的是网页渲染过程所需的网页文件,而避免将其他不需被加载的网页文件返回至上述终端,在一定程度上,可以降低对网络资源的消耗。

另一方面,在现有技术中,由于终端(浏览器或客户端)一般需要采集到自身的设备信息,并利用媒体查询(Media Query)方法,来确定与当前设备信息所对应的网页样式及该网页样式所需加载的各种网页文件,并从服务器返回的网页文件中,选取所需加载的各种网页文件。可以看出,现有技术中除了存在增加了额外的、冗余的资源下载成本(即额外消耗网络资源),造成加载性能不佳的问题之外,还存在如下问题:终端在进行网页渲染之前,需要确定自身的设备信息,还需要利用媒体查询方法判断所需加载的网页文件,并从服务器返回的网页文件中选取所需加载的网页文件,一定程度上,终端执行上述步骤的过程均需要消耗自身的处理资源。也就是说,在网页渲染的过程中,终端还需要考虑该以何种网页样式进行渲染,需要应用到哪些网页条件,这势必会影响到浏览器或客户端渲染网页的性能,降低网页响应的速度。可见,通过本申请实施例提供的上述方法,在网页渲染之前,确定终端的设备信息并确定与设备信息对应的网页文件均是由服务器来执行的,避免了由终端执行上述过程,从而避免因终端执行上述步骤而过多消耗终端的处理资源的问题,进而提升终端渲染网页的性能,提升网页响应的速度。

需要说明的是,以上各实施例所提供方法的各步骤的执行主体均可以是同一设备,或者,该方法也由不同设备作为执行主体。比如,步骤S201和步骤S202的执行主体可以为设备1,步骤S203的执行主体可以为设备2;又比如,步骤S201的执行主体可以为设备1,步骤S202和步骤S203的执行主体可以为设备2;等等。

图4为本申请一实施例提供的网页渲染装置和网页文件发送装置的示意图。参照图4所示,本申请一实施例中,终端100包括浏览器或客户端101,网页渲染装置110,服务器200包括网页文件发送装置210,其中,所述网页渲染装置110和上述网页文件发送装置210可以分别以软件、或硬件或软硬件结合的方式存在于上述终端100、上述服务器200中。上述服务器200和上述终端100可以通过网络相互通信。其中,上述终端100、服务器200可以包括显示屏、处理单元、内存、非易失性存储器、总线、输入输出装置等硬件。除上述硬件外,上述终端100和服务器200还包括相应的软件。需要说明的是,上述网页渲染装置中的各个单元所能够实现的功能与以上介绍的网页渲染方法中各个步骤所能够实现的功能类似,故该网页渲染装置的具体细节可以参照上述网页渲染方法实施例的内容,本文不再予以赘述。同样地,上述网页文件发送装置的具体细节可以参照上述网页文件发送方法实施例的内容。

参照图4所示,本申请实施例中,网页文件发送装置210包括:接收单元211,确定单元213,获取单元215及发送单元217。其中,所述接收单元211接收终端100的发送单元111所发送的携带与终端100对应的用户代理信息的网页请求;所述确定单元213根据所述用户代理信息,确定与所述用户代理信息对应的所述终端的设备信息;所述获取单元215获取与所述设备信息对应的网页文件;所述发送单元217向所述终端发送与所述设备信息对应的网页文件。其中,上述确定单元213可以通过查找第一数据库300的方式,来查找与用户代理信息对应耳的设备信息,以上第一数据库300可以预先存储有用户代理信息和设备信息的映射关系。另外,上述获取单元215可以通过向第二数据库400发送请求的方式来获取各种网页文件,所发送的请求可以是携带设备信息的HTTP头信息。上述第二数据库400可以存放于各种网页文件(资源),如:HTML文件、CSS文件、图片、JS文件等等,所述第二数据库400中存放的各种网页文件与设备信息进行映射,这样,上述获取单元215便可以根据当前确定的设备信息,来从该第二数据库400中获取与设备信息对应的各种网页文件。

利用上述网页文件发送装置,本申请实施例可以至少达到如下技术效果:

相较于现有技术,由于服务器在向终端返回网页渲染过程所需的网页文件之前,需要确定终端的设备信息,并获取与该设备信息对应的网页文件,从而使得最终服务器向终端返回的是网页渲染过程所需的网页文件,而避免将其他不需被加载的网页文件返回至上述终端,在一定程度上,可以降低对网络资源的消耗。另外,通过本申请实施例提供的上述方法,在网页渲染之前,确定终端的设备信息并确定与设备信息对应的网页文件均是由服务器来执行的,避免了由终端执行上述过程,从而避免因终端执行上述步骤而过多消耗终端的处理资源的问题,进而提升终端渲染网页的性能,提升网页响应的速度。

本申请可选的实施例中,所述网页文件发送装置210还包括:

生成单元,预先生成用户代理信息和设备信息的映射关系;

则,所述确定单元213根据预先生成的用户代理信息和设备信息的映射关系,查找与所述用户代理信息相映射的所述终端的设备信息;

在另一实施例中,所述网页文件发送装置210还包括:

生成单元,预先生成设备信息和特征信息的映射关系;其中,所述特征信息是所述用户代理信息中包含的;

则,所述确定单元213包括:信息提取单元和信息查询单元;所述信息提取单元提取所述用户代理信息中包含的特征信息;所述信息查询单元根据预先生成的设备信息和特征信息的映射关系,确定与所述特征信息对应的所述终端的设备信息。

继续参照图4所示,本申请实施例中,一种网页渲染装置110包括:发送单元111,接收单元113和渲染单元115;所述发送单元111向服务器200的接收单元211发送携带与终端对应的用户代理信息的网页请求;所述接收单元113接收所述服务器返回的与所述终端100的设备信息对应的网页文件;所述设备信息是所述服务器200的确定单元213根据所述用户代理信息确定的;所述渲染单元115利用与所述设备信息对应的网页文件进行网页的渲染。

本申请可选的实施例中,上述网页渲染装置110还包括:

文件接收单元,接收所述服务器返回的文件;所述文件包含与终端的设备信息对应的网页文件的文件标识;

请求发送单元,向所述服务器发送携带所述文件标识的获取请求;

所述接收单元113接收所述服务器响应于所述获取请求返回的与所述终端的设备信息对应的网页文件。

利用上述网页渲染装置,本申请实施例可以至少达到如下技术效果:

相较于现有技术,由于服务器在向终端返回网页渲染过程所需的网页文件之前,需要确定终端的设备信息,并获取与该设备信息对应的网页文件,从而使得最终服务器向终端返回的是网页渲染过程所需的网页文件,而避免将其他不需被加载的网页文件返回至上述终端,在一定程度上,可以降低对网络资源的消耗。另外,通过本申请实施例提供的上述方法,在网页渲染之前,确定终端的设备信息并确定与设备信息对应的网页文件均是由服务器来执行的,避免了由终端执行上述过程,从而避免因终端执行上述步骤而过多消耗终端的处理资源的问题,进而提升终端渲染网页的性能,提升网页响应的速度。

继续参照图4,本申请实施例中,一种网页渲染系统,包括:服务器200、第一数据库300和第二数据库400,所述第一数据库300存储有用户代理信息与设备信息的映射关系,所述第二数据库400存储有与设备信息对应的网页文件,所述服务器200接收终端100发送的携带用户代理信息的网页请求,并从所述第一数据库300中查询与所述网页请求中携带的用户代理信息对应的设备信息,所述服务器200从所述第二数据库400获取与所述设备信息对应的网页文件,并将获取的所述网页文件发送至终端100。

其中,本申请可选的实施例中,上述系统还可以包括:Web API(Application Programming Interface,应用程序编程接口)和TFS(Team Foundation Server,分布式文件系统)接口,所述Web API和TFS接口都是基于上述服务器200和第一数据库300的用以向上层业务提供服务的两个接口,上述Web API和上述TFS接口可以用以将从第二数据库400返回的不同的结果(如HTML、图片等)包装成相应的API(如Ajax),以便于各种上层业务去调用上述API,从而便于业务的实现,增强用户体验。

为了描述的方便,描述以上装置时以功能分为各种单元分别描述。当然,在实施本申请时可以把各单元的功能在同一个或多个软件和/或硬件中实现。

本领域内的技术人员应明白,本发明的实施例可提供为方法、系统、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。

本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。

这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。

这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。

还需要说明的是,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、商品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、商品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、商品或者设备中还存在另外的相同要素。

本领域技术人员应明白,本申请的实施例可提供为方法、系统或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。

本申请可以在由计算机执行的计算机可执行指令的一般上下文中描述,例如程序模块。一般地,程序模块包括执行特定任务或实现特定抽象数据类型的例程、程序、对象、组件、数据结构等等。也可以在分布式计算环境中实践本申请,在这些分布式计算环境中,由通过通信网络而被连接的远程处理设备来执行任务。在分布式计算环境中,程序模块可以位于包括存储设备在内的本地和远程计算机存储介质中。

本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于系统实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。

以上所述仅为本申请的实施例而已,并不用于限制本申请。对于本领域技术人员来说,本申请可以有各种更改和变化。凡在本申请的精神和原理之内所作的任何修改、等同替换、改进等,均应包含在本申请的权利要求范围之内。

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