专利名称:网页页面的显示方法、请求的处理方法、装置和系统的制作方法
技术领域:
本发明涉及信息传输技术领域,尤其涉及一种网页页面的显示方法、请求 的处理方法、浏览器、服务器,以及通信系统。
背景技术:
网页(Web)页面一般包含如图片、脚本文件、风格文件等多种资源,这 些资源通过HTTP (超文本传输协议)协议进行传输。
目前,用户通过浏览器访问 一个Web页面时,即输入一个URL ( Uniform Resource Location,统一资源定位符),如果该Web页面名爻展示一张图片,并 获取一个CSS (Cascading Style Sheets,层叠样式表)文件和一个JS (JAVASCRIPT,脚本)文件,换言之,即该Web页面显示所需要的资源(该 网页包含的资源)包括多种,或者一种但包括多个时,则浏览器通过访问该 URL后,会再发送三个请求去分别获取图片、CSS文件和JS脚本文件的内 容。即,目前对于HTTP协议只支持单个内容请求返回单个内容响应,这样 就导致当一个WEB页面包含多个资源时,浏览器会向服务器端发送多次单 个内容请求,相应的服务器端返回多次单个内容响应,从而将所有需要的资源 内容从服务器端传输到浏览器端,即如图l所示,通过多次请求-响应获得浏 览器所需要的资源内容;
发明人在实现本发明的过程中,发现现有技术中,按照如图l所示的方式 请求web页面包含的资源时,对于每个资源都需要从浏览器端发一个请求到 服务器端,即存在多个资源内容需要多次请求的问题,针对所访问的资源比较 多的情况,会造成比较大的开销,并且效率低下。
发明内容
本发明实施例提供一种Web页面的显示方法、请求的处理方法、浏览器、
7服务器,以及通信系统,以解决每个网页资源内容都需要发送一次请求的问题。 本发明实施例提供如下技术方案
一种网页页面的显示方法,包括
发送资源访问请求,该资源访问请求包括至少两个URL信息; 接收返回的与该资源访问请求对应的响应数据流;
从该响应数据流中解析出分隔信息,根据该分隔信息从该响应数据流中获 取到与所述至少两个URL信息中的每个URL信息对应的资源内容;
根据每个资源内容的类型,对应处理所述每个资源内容,实现网页页面的 显示。以及, 一种请求处理方法,包括
接收资源访问请求;
从该资源访问请求中获得至少两个URL信息;
针对所述至少两个URL信息中的每个URL信息,获得对应的资源内容; 返回与该资源访问请求对应的响应数据流,该响应lt据流中包含对应所述 至少两个URL信息的至少两个资源内容和分隔信息。
以及, 一种浏览器,包括
第一通信才莫块,用于发送资源访问请求,该资源访问请求中包含至少两个 URL信息,并接收返回的与该资源访问请求对应的响应数据流;
第一解析模块,用于从所述响应数据流中解析出分隔信息,根据该分隔信 息从该响应数据流中获取到与所述至少两个URL信息中的每个URL信息对应的 资源内容;
第一处理模块,用于根据每个资源内容的类型,对应处理所述每个资源内 容,实现网页页面的显示。
以及, 一种服务器,包括
第二通信模块,用于接收资源访问请求,以及返回与该资源访问请求对应 的响应数据流,该响应数据流包含对应所述至少两个URL信息的至少两个资源 内容和分隔信息;
第二解析模块,用于从所述资源访问请求中获得至少两个URL信息; 第二处理模块,用于针对所述至少两个URL信息中的每个URL信息,获得对应的资源内容,并通过所述第二通信模块返回与该资源访问请求对应的响应 数据流,该响应数据流包含对应所述至少两个URL信息的至少两个资源内容和 分隔信息。
以及, 一种通信系统,包括
浏览器,用于发送包含至少两个URL信息的资源访问请求,并接收返回的 与所述资源访问请求对应的响应数据流,根据从所述响应凄史据流中角竿析出的分 隔信息,从该响应数据流中解析出与所述至少两个URL信息中的每个URL信息 对应的资源内容;根据每个资源内容的类型,对应处理所述每个资源内容,实 现网页页面的显示;
服务器,用于从接收的所述资源访问请求中获得至少两个URL信息,获得 与每个URL信息对应的资源内容,并返回与所述资源访问请求对应的响应数据 流,该响应数据流包含对应所述至少两个URL信息的至少两个资源内容和分隔 信息。
本发明实施例中,通过发送一个包含多个URL信息的资源访问请求,并 接收包含多个资源内容的响应数据流的手段,实现通过单个请求得到网页显示 所需要的多个资源内容,克服了目前客户端针对每个网页资源内容都需要向服 务器端发一次请求的问题,从而减少了浏览器和服务器端的开销,提高了效率。
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施 例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述 中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付 出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1为现有技术的请求-响应的流程示意图2为本发明实施例提供的一种web页面的显示方法的流程示意图; 图2A为本发明实施例提供的另一种web页面的显示方法的流程示意图; 图2B为本发明实施例提供的再 一 种web页面的显示方法的流程示意图; 图3为本发明实施例提供的一种处理请求方法的流程示意图; 图3A为本发明实施例4是供的另一种处理请求方法的流程示意图;图4为本发明实施例提供的方法的交互示意图5为本发明实施例提供的一种资源访问请求的消息体结构示意图6为本发明实施例提供的一种响应数据流的消息体结构示意图7为本发明实施例提供的一种通信系统的结构示意图8为本发明实施例提供的一种浏览器的结构示意图9为本发明实施例提供的一种服务器的结构示意图。
具体实施例方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清 楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是 全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造 性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
本发明实施例中,通过扩展HTTP协议,浏览器可以通过一次资源访问 请求将显示网页所需要的多个资源内容告诉服务器,即浏览器发送资源访问请 求,该资源访问请求包含至少两个URL信息,使得服务器收到该资源访问请 求后,获得所述至少两个URL信息,针对每个URL信息,按照原有对URL 信息的处理方式,获取对应的资源内容,并通过同一个响应数据流将多个资源 内容返回给浏览器,从而解决当前HTTP协议中,每个资源内容都需要浏览 器端发送一次请求的问题。
请参阅图2,为本发明实施例的一种Web页面的显示方法,可应用于浏览 器端,包括
5101、 发送资源访问请求,该资源访问请求包括至少两个URL信息;
5102、 接收返回的与该资源访问请求对应的响应数据流;
5103、 从该响应数据流中解析出分隔信息,根据该分隔信息从该响应数据 流中获取到与所述至少两个URL信息中的每个URL信息对应的资源内容;
在一种实现下,这里的分隔信息可以是内容块大小列表信息,所述内容块 大小列表信息包括至少两个内容块大小信息;在另一种实现下,这里的分隔信 息可以是间隔符。
5104、 根据每个资源内容的类型,对应处理所述每个资源内容,实现Web
10页面的显示。
需要说明的是,在一种实现下,浏览器端获得至少两个URL信息,当浏览
器保存所述至少两个URL信息,其中每个URL信息可以反映资源内容的类型, 则可以是,根据保存的所述至少两个URL信息中的每个URL信息反映的资源内 容类型,对应处理所述获取到的与每个URL信息对应的资源内容,实现Web 页面的显示;
在另一种实现下,当从所述响应数据流中进一步解析出内容块类型列表信 息,所述内容块类型列表信息包括至少两个内容块类型信息,则可以是,根据 每个内容块类型信息所反映的资源内容的类型,对应处理所述资源内容,实现 Web页面的显示。
可见,本发明实施例中,通过浏览器端发送一个包含多个URL信息的资 源访问请求,并接收包含多个资源内容的响应数据流的手段,实现通过单个请 求得到网页显示所需要的多个资源内容,克服了目前浏览器端针对每个网页资 源内容都需要向服务器端发一个请求的问题,减少了客户端发送请求的次数, 从而减少这些请求所导致的延时,以及减少了浏览器和服务器端的开销,提高 了效率。
进一步的,本发明实施例中,由于是浏览器端主动将需要的资源内容的地 址信息,即URL设置在待发送的资源访问请求中,因此,当服务器端返回多 个资源内容后,浏览器能识别出分别与请求的URL信息对应的、不同的资源 内容,并进行相应的处理。
本发明实施例中,从该响应数据流中可以进一步解析出内容块类型列表信 息,所述内容块类型列表信息包括至少两个内容块类型信息;
请参阅图2A,为本发明实施例的另一种Web页面的显示方法,可应用于 浏览器端,包括
5110、 根据请求得到的html代码中的资源链接信息,生成资源访问请求, 该请求中包括至少两个URL信息;
5111、 发送该资源访问请求,该资源访问请求中包括至少两个URL信息; 该资源访问请求具体可以是http消息,该http消息的消息头中包括至少两个URL信息(亦可称为URL列表),可选的所述至少两个URL信息之间还可以包含有URL间隔符号;例如消息头示意如下
GET Za.html http/1.1, /b.html http/l丄/c.gif http/1.1, /d.is http/1.1
Host: sample.com
Accept:*/*
Pragma: no-ceich6
Cache-Control: no-cache
Referer: http:〃sample.com/
User-Agent:Mozilla/4.04[en](Win95;I;Nav)
Range:bytes=554554-
其中,下划线部分为URL列表,其他内容同现有技术,故不再赘述。S112、接收返回的与该资源访问请求对应的响应数据流;该响应数据流具体可以是Http消息,该http消息的消息头中包含内容块
类型列表信息和内容块大小列表信息,该http消息的内容体包含至少两个资源内容。
例如消息头示意如下
HTTP/1.1 200 OK
Server: Microsoft-IIS/5.1
Date: Thu, 23 Mar 2006 07:54:53 GMT
Content-Disposition: attachment
Cache-Control: private
Content-Type: text/html, text/html, image/gif, text/javascript; charset=utf-8
Content-Length: 37, 400, 22, 423
其中,Context-Type字段名和值表示内容块类型列表信息,第一个和第二个是HTML类型,第三个是图片类型,第四个是脚本文件类型;Content-Length字段名和值表示内容块大小列表信息,37、 400、 22、 423分别表示响应数据流中各个资源内容的大小;其他内容同现有技术,故不再赘述。
S113 、从响应数据流中解析出内容块类型列表信息和内容块大小列表信
12息,根据该内容块大小列表信息从该响应数据流中解析出所述至少两个URL信息中的每个URL信息对应的资源内容;
具体可以是,从响应数据流的消息头中解析出Context-Type字段名和值,及Content-Length字段名和值,通过Content-Length字段名和值可以从响应数据流中——区别出各个资源内容,即通过Content-Length字段名和值可以从该响应数据流中解析出所述至少两个URL信息中的每个URL信息对应的资源内容o
S114、根据每个内容块类型信息所反映的资源内容的类型,对应处理所述资源内容,实现Web页面的显示。
具体可以是,当资源内容的类型为text/javascript时,执行该脚本文件中的脚本代码,以控制脚本逻辑的执行;
当资源内容的类型为image/gif时,将该图片内嵌到页面中显示;等等。
可见,本发明实施例中,通过浏览器端发送一个包含多个URL信息的资源访问请求,并接收包含多个资源内容的响应数据流的手段,实现通过单个请求得到网页显示所需要的多个资源内容,克服了目前客户端针对每个网页资源内容都需要向服务器端发一个请求的问题,减少了客户端发送请求的次数,从而减少这些请求所导致的延时,以及减少了浏览器和服务器端的开销,提高了效率。
进一步的,本发明实施例中,由于是浏览器端主动将需要的资源内容的地址信息,即URL设置在待发送的资源访问请求中,因此,当服务器端返回多个资源内容后,浏览器能识别出分别与请求的URL信息对应的、不同的资源内容,并进^"相应的处理。
请参阅图2B,为本发明实施例的再一种Web页面的显示方法,可应用于浏览器端,包括
5120、 根据请求得到的html代码中的资源链接信息,生成资源访问请求,该请求中包括至少两个URL信息(亦可称为URL列表);
5121、 发送该资源访问请求,该资源访问请求中包括至少两个URL信息;该资源访问请求具体可以是http消息,该http消息的消息头中包括至少两个URL信息,可选的所述至少两个URL信息之间还可以包含有URL间隔
/Wr 口
付可;
例如消息头示意如下
GET /a.html http/1.1, /b.html http/1.1, /c.gif http/1.1, /d.is http/1.1
Host: sample.com
Accept:*/*
Pragma: no-cache
Cache-Control: no-cache
Referer: http:〃sample.com/
User-Agent:Mozilla/4.04[en](Win95;I;Nav)
Range:bytes=554554-
其中,下划线部分为URL列表,其他内容同现有技术,故不再赘述。
5122、 接收返回的与该资源访问请求对应的响应数据流;该响应数据流具体可以是Http消息,该http消息的内容体包含至少两个
资源内容,以及该http消息的消息头示例如下HTTP/1.1 200 OKServer: Microsoft-IIS/5.1Date: Thu, 23 Mar 2006 07:54:53 GMTContent-Disposition: attachmentCache-Control: private
Content-Type: text/html, text/html, image/gif, text/javascript; charset=utf-8;bomidary=-----------------..........7d62bf2飾6c
其中,Context-Type字段名和值表示内容块类型列表信息,第一个和第二个是HTML类型,第三个是图片类型,第四个是脚本文件类型;以及各个资源内容(亦可称为内容块)之间通过
boundary...........................7d62bf2f9066c来分隔;其他内容同现有技术,
故不再赘述。
5123、 从该响应数据流中解析得到内容块类型列表信息和间隔符,根据该间隔符从该响应数据流中解析出与所述至少两个URL信息中的每个URL信息对应的资源内容;
具体可以是,从响应数据流的消息头中解析出Context-Type字段名和值,
以及boundary=……---------------------7d62bf2f9066c,通过字符串7d62bf2f9066c
可以从响应数据流的消息内容体中——区别出各个资源内容,即从该响应数据流的消息内容体中解析出每个与请求的URL信息对应的资源内容,其中所述响应数据流的消息内容体中资源内容之间包含有间隔符。
S114、根据每个内容块类型信息所反映的资源内容的类型,对应处理所述资源内容,实现Web页面的显示。
可见,本发明实施例中,通过浏览器端发送一个包含多个URL信息的资源访问请求,并接收包含多个资源内容的响应数据流的手段,实现通过单个请求得到网页显示所需要的多个资源内容,克服了目前客户端针对每个网页资源内容都向服务器端发一个请求的问题,减少了客户端发送请求的次数,从而减少这些请求所导致的延时,以及减少了浏览器和服务器端的开销,提高了效率。
进一步的,本发明实施例中,由于是浏览器端主动将需要的资源内容的地址信息,即URL设置在待发送的资源访问请求中,因此,当服务器端返回多个资源内容后,浏览器能识别出分别与请求的URL信息对应的、不同的资源内容,并进^"相应的处理。
请参阅图3,为本发明实施例的一种请求处理方法,可以应用于服务器端,包括
5201、 接收资源访问请求;
5202、 从该资源访问请求中获得至少两个URL信息(亦可称为URL列表);
5203、 针对所述至少两个URL信息中的每个URL信息,获得对应的资源内容;
5204、 返回与该资源访问请求对应的响应^t据流,该响应^:据流中包含对应所述至少两个URL信息的至少两个资源内容和分隔信息。
在一种实现下,这里的分隔信息可以是内容块大小列表信息,所述内容块大小列表信息包括至少两个内容块大小信息;在另一种实现下,这里的分隔信息可以是间隔符。
15可见,本发明实施例中,通过服务器端接收一个包含多个URL信息的资源访问请求,并返回包含多个资源内容的响应数据流的手段,实现通过单个请求得到网页显示所需要的多个资源内容,克服了目前客户端针对每个网页资源内容都需要向服务器端发一个请求的问题,从而减少了服务器端的开销,提高了效率。
进一步的,本发明实施例中,服务器端针对每个URL信息仍然保持现有获取各个资源内容的处理方式。
请参阅图3A,为本发明实施例的另一种请求处理方法,可以应用于服务器端,包括
S211、接收资源访问请求;
S212 、判断该资源访问请求的类型,当该资源访问请求为单个内容请求时,执行S216;当该资源访问请求为多个内容请求时,执行S213;
具体可以是,根据从该资源访问请求的消息头中解析得到的请求类型信息,确定该资源访问请求是单个内容请求,还是多个内容请求;
在一种实现下,这里的请求类型信息,如图5所示,即资源访问请求中消息头字段名multiple URI,值为0或1 ,当multiple URI字段值为1时,表示该请求为多个内容请求,即一个消息请求多个内容;当multiple URI字段值为0时,表示该请求为单个内容请求,即一个消息请求一个内容;
5213、 从所述资源访问请求的消息头中获得至少两个URL信息,即URL列表;
优选的,URL列表中的不同URL信息之间存在URL间隔符号,这里的URL间隔符号包括但不限于逗号、分号或空格符。
5214、 依次针对每个URL信息,釆用现有的方式,获得对应的资源内容;
5215、 返回与该资源访问请求对应的响应数据流,该响应数据流的消息内容体包含与所述至少两个URL信息对应的至少两个资源内容,所述资源内容之间包含间隔符,以及该响应数据流的消息头中包含内容块类型列表信息和间隔符;或者,该响应数据流的消息内容体包含与所述至少两个URL信息对应的至少两个资源内容,以及该响应数据流的消息头中包含内容块类型列表信息和内容块大小列表信息;
S216、按照现有的方式进行处理,由于为现有技术,故不再赘述。可见,本发明实施例中,服务器端接收资源访问请求后,确定请求的类型后,服务器端针对每个URL信息仍然保持现有获取各个资源内容的处理方式,当请求类型为多个内容请求时,服务器端将多个资源内容输出到同 一个响应数据流中,实现通过单个请求得到网页显示所需要的多个资源内容,克服了目前客户端针对每个网页资源内容都向服务器端发一个请求的问题,从而减少了服务器端的开销,提高了效率。
以及,本发明实施例中,服务器端确定该资源访问请求是对多个资源的访问时,可以对每个资源内容的访问进行处理,如认证、请求过滤等。
下面结合一个具体例子进一步介绍本发明实施例的方案
请参阅图3,为本发明实施例方法的一种交互示意图,可应用于包括浏览
器端、服务器的系统,包括
步骤311、浏览器发送一个web请求,该web请求包含一个URL信息;具体可以是,当用户在浏览器中输入 一 个 URL:
http:〃news.sina.com.cn/12345.html以访问一新闻网页时,浏览器向服务器发出
访问该URL指定页面的web请求;
步骤312、服务器在收到该web请求后,返回该URL对应页面的HTML
代码(即返回与该web请求对应的响应);
具体的HTML代码如下<html>
<header>
<link ref=,,stylesheet,, type="text/css" href="/css/xxx.css,,>
<script language="javascript,, src="/js/xx.js"></script>
</hcad6r>
<body>
新闻内容
新闻图片l:
<img src="/images/l.jpg,,>
17新闻图片2:
<img src="/images/2.jpg">新闻图片3:
<img src=,,/images/3.jpg,,>新闻动态图片
<img src=,7images/dynamical,,>
</body>
</html>
步骤313、浏览器解析该HTML代码,找出该页面中的所有资源内容的URL;
具体可以是,浏览器解析该HTML代码,获知显示该新闻网页还需要获取一个CSS文件、 一个脚本文件、三个图片文件和一个动态图片,通过html标签中的src属性值获取到待访问资源内容的URL信息;
4十只寸3口上的htmH戈;马,例如<img src="/images/l.jpg"〉。
需要说明的是,获得URL信息;确定每个URL信息对应的服务器,如果这些URL信息对应的服务器为多个,则浏览器根据URL信息对应的服务器对这些URL信息进行分组,生成资源访问请求,所述同组的多个URL信息包含在同一个资源访问请求中;如果这些URL信息对应同一个服务器,则浏览器生成一个包含所有URL信息的资源访问请求。
具体可以是,浏览器根据URL,确定该URL对应的服务器;例如URL1和URL2对应的服务器为服务器A, URL3、 URL4对应的服务器为服务器B,则生成一个包含URL1和URL2的资源访问请求,发送到服务器A;生成一个包含URL3、 URL4的资源访问请求,发送到服务器B。
下面结合例子进行说明(1 ).如果返回的HTML代码包括
<img src=,, http:〃10.71.144.79/image.jpg,,
如前所述,src的属性值为URL,该URL中包含服务器地址,即10.71.144.79;
(2 ).如果访问页面包含下面这样的html代码<img src=7images/l.jpg"〉,则URL对应的服务器地址是当前访问页面的服务器地址。需要说明的是,本实施例中属于(2)的情况。
步骤314、浏览器向服务器发送资源访问请求,该资源访问请求包含前述六个待访问资源内容的URL信息;
具体可以是,在该资源访问请求的消息头中包含六个资源内容的URL信息,所述URL信息之间包含URL间隔符号,结合图5所示,为资源访问请求的消息体结构示意图,如图5所示,第一行即请求行中包含了 URL1、 URL2等,多个URL之间釆用URL间隔符号分隔,在一种实现下,这里的URL间隔符号可以是逗号或者分号或者空格符等符号;资源访问请求的消息体的其他内容同现有技术,故不再赘述。
步骤315、服务器从收到的资源访问请求中获取所有的URL信息,依次针对每个URL信息,获取对应的网页资源内容;这里的网页资源内容可以是内嵌的图片,也可以是风格文件、脚本文件。
具体可以是,服务器从收到的资源访问请求的消息头中获取到URL列表;
针对每个URL,按照原有方式从文件系统中读取对应的文件,或者调用对应的应用逻辑实体获取资源内容。
例如<img src^7images/3.jpg"〉中的URL反映的是静态资源类型,可以从文件系统中读取对应的文件内容;
<img src="/images/dynamical">中的URL反映的是动态资源类型,可以调用对应的应用逻辑实体获取资源内容。
即,对于CSS文件、脚本文件和图片文件,服务器直接从文件系统中读取对应的文件;对于URL为"/images/dynamical"的资源,服务器调用一个应用逻辑实体处理,动态生成一个图片的内容。
步骤316、服务器返回与该资源访问请求对应的响应数据流,该响应数据流的消息头中包含内容块类型列表信息和间隔符,该间隔符用于分隔不同资源内容,以及该响应数据流的消息内容体中包含与所述六个URL信息对应的六个资源内容,这些资源内容之间包含有该间隔符,换言之,该间隔符将所述六个资源内容串连起来。
具体可以是,服务器将从文件系统中读取到的文件内容和应用逻辑实体动
19态生成的图片内容(共六个资源内容)输出到同一个响应数据流中,六个资源
内容之间的间隔符可以是boundary=—-—..........------------7d62bf2f9066c。
结合图6所示,为响应数据流的消息体结构示意图,如图6所示,其中,一个消息头字4殳名为Content-Type,字^1^直为text/css, text/javascript, image/gif,image/gif, image/gif, image/gif; charset=utf-8; boundary=7d62bf2f9066c; 内容体中包含资源内容,每个资源内容之间包含有字符串7d62bf2f9066c;由于消息体的其他结构同现有技术,故不再赘述。
步骤317、浏览器从收到的响应数据流的消息头中解析出内容块类型列表信息和间隔符,该内容块类型列表信息包含六个内容块类型信息,根据该间隔符从该响应数据流的消息内容体中解析出与所述六个URL信息对应的六个资源内容,根据每个内容块类型信息所反映的资源内容的类型,对应处理所述资源内容,实现web页面的显示;
具体可以是,浏览器收到服务器端返回的响应数据流,先获取到该响应数据流的消息头,从该消息头中解析出内容块类型列表信息和间隔符;在该响应数据流中,不同资源内容之间通过boundary的值来分隔,当浏览器读取到字符串7d62bf2f9066c时,说明读取一个资源内容完毕,接下来的属于另夕l、一个资源内容,直到下一个boundary的值出现,以此类推,A/v而解析出六个资源内容。
浏览器根据资源内容的类型才能正确的显示资源,例如如何显示,显示的大小等等。其中,根据每个内容块类型信息所反映的资源内容的类型,对应处理所述资源内容,实现web页面的显示,包括
当资源内容为CSS文件时,执行该CSS文件中的CSS代码,以控制页面的显示,即该页面的风格由一个CSS文件提供的CSS代码控制;
当资源内容为脚本JS文件时,执行该脚本文件中的脚本代码,以控制脚本逻辑的执行,即该页面上的操作由脚本JS文件提供的脚本代码控制;
当资源内容为图片时,将该图片内嵌到页面中显示;等等。
需要说明的是,浏览器依次获取到资源内容,当浏览器获取到一个资源内容时,可以马上显示在网页上,而无需等待所有资源内容都获取完毕后再显示。每个显示的内容可以緩存在浏览器(客户端),下次如果访问该资源内容,就可以不用向服务器端获取,而是直接在客户端的缓存中获取。
应当理解的是,如果浏览器已知道所有需要的资源内容的URL列表,则
可以直接发送包含该URL列表的资源访问请求到服务器端。则本实施例中的步骤311至313可以省掉。
可见,本发明实施例中,通过浏览器端发送一个包含多个URL信息的资源访问请求,服务器端返回包含多个资源内容的响应数据流的手段,实现通过单个请求得到网页显示所需要的多个资源内容,克服了目前客户端针对每个网页资源内容都向服务器端发一个请求的问题,减少了客户端发送请求的次数,从而减少这些请求所导致的延时,以及减少了浏览器和服务器端的开销,提高了效率。
进一步的,本发明实施例中,由于是浏览器端主动将需要的资源内容的地址信息,即URL设置在待发送的资源访问请求中,因此,当服务器端返回多个资源内容后,浏览器能识别出不同的资源内容,并进行相应的处理。
以及,本发明实施例中,服务器端针对每个URL信息仍然保持现有获取各个资源内容的处理方式;而且,服务器端确定该资源访问请求是对多个资源的访问时,仍然可以对每个资源内容的访问进行处理,如认证、请求过滤等。
请参阅图7,为本发明实施例的通信系统的结构示意图,包括浏览器500,用于发送包含至少两个URL信息的资源访问请求,并接收返回的与所述资源访问请求对应的响应数据流,根据从所述响应数据流中获取到的分隔信息,从该响应数据流中解析出与所述至少两个URL信息中的每个URL信息对应的资源内容;根据每个资源内容的类型,对应处理所述每个资源内容,实现Web页面的显示;
服务器600,用于从接收的资源访问请求中获取至少两个URL信息,获得与每个URL信息对应的资源内容,并返回与所述资源访问请求对应的响应数据流,该响应数据流包含对应所述至少两个URL信息的至少两个资源内容和分隔信息;
在一种实现下,这里的分隔信息可以是内容块大小列表信息,所述内容块大小列表信息包括至少两个内容块大小信息;在另一种实现下,这里的分隔信
21息可以是间隔符。
进一步的,本发明实施例的通信系统可以包括文件系统700和/或应用逻
辑实体800:
相应的,服务器600为第一服务器,用于从接收的资源访问请求中获取至 少两个URL信息(URL列表),根据所述URL信息从对应的文件系统700中 读取相应的文件内容,和/或调用对应的应用逻辑实体800生成响应内容,并 返回与所述资源访问请求对应的响应数据流,该响应数据流包含对应的至少两 个资源内容(文件内容和/或响应内容)和分隔信息。
需要说明的是,这里的应用逻辑实体800可以作为一个功能模块部署在 服务器600中,即可以相当于服务器600的一个内嵌程序。
可见,本发明实施例中,通过浏览器端发送一个包含多个URL信息的资 源访问请求,服务器端返回包含多个资源内容的响应数据流的手段,实现通过 单个请求得到网页显示所需要的多个资源内容,克服了目前客户端针对每个网 页资源内容都向服务器端发一个请求的问题,减少了客户端发送请求的次数, 从而减少这些请求所导致的延时,以及减少了浏览器和服务器端的开销,提高 了效率。
请参阅图8,为本发明实施例的一种浏览器的结构示意图,其中,本发明 实施例的浏览器500包括
第一通信模块501,用于发送资源访问请求,该资源访问请求中包含至少 两个URL信息,并接收返回的与该资源访问请求对应的响应数据流;
第一解析模块502,用于从所述响应数据流中解析出分隔信息,根据该分 隔信息从该响应数据流中获取到与所述至少两个URL信息中的每个URL信息对 应的资源内容;
以及,第一处理模块503,用于根据每个资源内容的类型,对应处理所述 每个资源内容,实现Web页面的显示。
具体的,如果分隔信息是内容块大小列表信息,所述内容块大小列表信息 包括至少两个内容块大小信息;在一种实现下,第一解析模块502为第一资源 内容解析模块,用于从所述响应数据流中解析得到内容块大小列表信息,根据该内容块大小列表信息从该响应数据流中解析出每个与请求的URL信息对应 的资源内容。
需要说明的是,内容块大小信息用于表示一个内容块的大小(或者说内容 块的长度),通过利用多个内容块大小信息,从响应数据流的消息内容体中一 一区别出各个资源内容。
具体的,如果分隔信息是间隔符,在另一种实现下,第一解析模块502 为第二资源内容解析模块,用于从该响应数据流的消息头中解析出间隔符,根 据该间隔符从该响应数据流的消息内容体中解析出每个与请求的URL信息对 应的资源内容,其中所述响应数据流的消息内容体中资源内容之间包含有间隔 符。这里的间隔符可以是boundary=7d62bf2f9066c。
需要说明的是,在该响应数据流中,不同资源内容之间通过boundary的 值来分隔,当浏览器读取到字符串7d62bf2f9066c时,说明读取一个资源内容 完毕,接下来的属于另外一个资源内容,直到下一个boundary的值出现,以 此类推,从而解析出各个资源内容。
以及,本发明实施例中,在一种实现下,第一处理才莫块503为第一显示处
内容类型,对应处理获^^到的与每个URL信息对应的资源内容,实现Web页面 的显示;
如果所述第一解析^t块502从所述响应数据流中进一步解析出内容块类 型列表信息,所述内容块类型列表信息包括至少两个内容块类型信息,则第一 处理模块503为第二显示处理模块,用于根据每个内容块类型信息所反映的资 源内容的类型,对应处理所述资源内容,实现Web页面的显示。这里的内容块 类型信息表示一内容块的类型。
可见,本发明实施例中,通过浏览器端发送一个包含多个URL信息的资 源访问请求,并接收包含多个资源内容的响应数据流的手段,实现通过单个请 求得到网页显示所需要的多个资源内容,克服了目前客户端针对每个网页资源 内容都需要向服务器端发一个请求的问题,减少了客户端发送请求的次数,从 而减少这些请求所导致的延时,以及减少了浏览器和服务器端的开销,提高了效率。
进一步的,本发明实施例中,由于是浏览器端主动将需要的资源内容的地 址信息,即URL设置在待发送的资源访问请求中,因此,当服务器端返回多 个资源内容后,浏览器能识别出不同的资源内容,并进行相应的处理。
请参阅图9,为本发明实施例的服务器的结构示意图,其中,本发明实施
例的服务器600包括
第二通信模块601,用于接收资源访问请求,以及返回与该资源访问请求 对应的响应数据流,该响应数据流包含对应所述至少两个URL信息的至少两个 资源内容和分隔信息;
第二解析模块602,用于从所述资源访问请求中获取至少两个URL信息; 需要说明的是,至少两个URL信息的表现形式可以是URL列表,URL列表 中的URL信息之间可以包括URL间隔符号,如空格符号或逗号或分号。
获得对应的资源内容,并通过所述第二通信模块601返回与该资源访问请求对 应的响应数据流,该响应数据流包含对应所述至少两个URL信息的至少两个资 源内容和分隔信息;这里的分隔信息用于从响应数据流中分隔出不同资源内 容,具体的,这里的分隔信息可以是内容块大小列表信息,所述内容块大小列 表信息包括至少两个内容块大小信息;这里的分隔信息也可以是间隔符。
需要说明的是,针对所述至少两个URL信息中的每个URL信息,可以采 用现有方式获得对应的资源内容。
在一种实现下,当所述URL信息反映的是静态资源类型,则从文件系统 中读取与该URL信息对应的文件内容;
当所述URL信息反映的是动态资源类型,则调用对应的应用逻辑实体获 取与该URL信息对应的资源内容。
如果接收的资源访问请求中进一步包含用于标识该资源访问请求的类型 的头信息,简称为请求类型信息,则本发明实施例的服务器中,第二解析模块 602为消息头解析模块,用于从所述资源访问请求中解析出请求类型信息,根 据该请求类型信息确定请求消息的类型,当该资源访问请求为多个内容请求
24(一个请求多个资源内容的消息)时,从所述资源访问请求中获取URL列表
(至少两个URL信息)。
本发明实施例中,在一种实现下,第二处理模块603为响应处理模块,用 于针对所述至少两个URL信息中的每个URL信息,获得对应的资源内容,并通 过所述第二通信才莫块返回与该资源访问请求对应的响应数据流,该响应数据流
容块类型列表信息的头信息,所述内容块类型列表信息包括至少两个内容块类 型信息,内容块类型信息表示一内容块的类型。
在一种实现下,所述响应处理模块为第一响应处理模块,用于针对所述至 少两个URL信息中的每个URL信息,获得对应的资源内容,生成与该资源访 问请求对应的响应数据流,该响应数据流的消息内容体包含与所述至少两个 URL信息对应的至少两个资源内容,所述资源内容之间包含有间隔符,以及 该响应数据流的消息头中包含内容块类型列表信息和该间隔符,通过所述第二 通信模块601返回与该资源访问请求对应的响应数据流。
在另一种实现下,所述响应处理模块为第二响应处理模块,用于针对所述 至少两个URL信息中的每个URL信息,获得对应的资源内容,生成与该资源 访问请求对应的响应数据流,该响应数据流的消息内容体包含与所述至少两个 URL信息对应的至少两个资源内容,以及该响应数据流的消息头中包含内容 块类型列表信息和内容块大'J、列表信息,所述内容块大d、列表信息包括至少两 个内容块大小信息,通过所述第二通信模块601返回与该资源访问请求对应的 响应数据流。这里的内容块大小信息用于表示一个内容块的大小(或者说内容 块的长度),这里的内容块类型信息表示一内容块的类型。
可见,本发明实施例中,通过服务器端接收一个包含多个URL信息的资 源访问请求,并返回包含多个资源内容的响应数据流的手段,实现通过单个请 求得到网页显示所需要的多个资源内容,克服了目前客户端针对每个网页资源 内容都需要向服务器端发一个请求的问题,从而减少了服务器端的开销,提高 了效率。
进一步的,本发明实施例中,服务器端针对每个URL信息仍然保持现有 获取各个资源内容的处理方式。是可以通过计算机程序来指令相关的硬件来完成,所述的程序可存储于一计算 机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。
其中,所述的存储介质可为^兹碟、光盘、只读存储记忆体(Read-Only Memory, ROM)或随机存储记忆体(Random Access Memory, RAM)等。
以上所述1夂为本发明的几个实施例,本领域的技术人员依据申请文件公开 的可以对本发明进行各种改动或变型而不脱离本发明的精神和范围。
权利要求
1、一种网页页面的显示方法,其特征在于,包括发送资源访问请求,该资源访问请求包括至少两个URL信息;接收返回的与该资源访问请求对应的响应数据流;从该响应数据流中解析出分隔信息,根据该分隔信息从该响应数据流中获取到与所述至少两个URL信息中的每个URL信息对应的资源内容;根据每个资源内容的类型,对应处理所述每个资源内容,实现网页页面的显示。
2、 如权利要求1所述的方法,其特征在于,所述分隔信息为内容块大小 列表信息,所述内容块大小列表信息包括至少两个内容块大小信息;所述根据该分隔信息从该响应数据流中获取到与所述至少两个URL信息 中的每个URL信息对应的资源内容为根据该内容块大小列表信息从该响应数据流中解析出每个与请求的URL 信息对应的资源内容。
3、 如权利要求l所述的方法,其特征在于,所述从该响应数据流中解析 出分隔信息,所述根据该分隔信息从该响应数据流中获取到与所述至少两个 URL信息中的每个URL信息对应的资源内容,包括从该响应数据流的消息头中解析出间隔符,根据该间隔符从该响应数据流 的消息内容体中解析出每个与请求的URL信息对应的资源内容,其中所述响应 数据流的消息内容体中资源内容之间包含有间隔符。
4、 如权利要求1或2或3所述的方法,其特征在于,所述根据每个资源 内容的类型,对应处理所述每个资源内容,实现网页页面的显示,包括根据保存的所述至少两个URL信息中的每个URL信息反映的资源内容类 型,对应处理所述获取到的与每个URL信息对应的资源内容,实现网页页面的 显示。
5、 如权利要求1所述的方法,其特征在于,当从所述响应数据流中进一 步解析出内容块类型列表信息,所述内容块类型列表信息包括至少两个内容块 类型信息,所述根据每个资源内容的类型,对应处理所述每个资源内容,实现网页页面的显示,包括根据每个内容块类型信息所反映的资源内容的类型,对应处理所述资源内 容,实现网页页面的显示。
6、 如权利要求l、 2、 3或5所述的方法,其特征在于,所述发送资源访 问请求之前,进一步包括获得至少两个URL信息;确定每个URL信息对应的服务器,当所述至少两个URL信息对应的服务器成资源访问请求,所述同组的多个URL信息包含在同 一个资源访问请求中。
7、 一种请求处理方法,其特征在于,包括 接收资源访问请求;从该资源访问请求中获得至少两个URL信息;针对所述至少两个URL信息中的每个URL信息,获得对应的资源内容; 返回与该资源访问请求对应的响应数据流,该响应数据流中包含对应所述 至少两个URL信息的至少两个资源内容和分隔信息。
8、 如权利要求7所述的方法,其特征在于,所述接收资源访问请求后, 进一步包括根据从该资源访问请求中解析出的请求类型信息,确定该资源访问请求的 类型为多个内容请求。
9、 如权利要求7或8所述的方法,其特征在于,所述返回的响应数据流 中进一步包含内容块类型列表信息,所述内容块类型列表信息包括至少两个内 容块类型信息。
10、 如权利要求9所述的方法,其特征在于,所述返回与该资源访问请求 对应的响应数据流之前,进一步包括生成与该资源访问请求对应的响应教:据流,该响应^:据流的消息内容体包含与所述至少两个URL信息对应的至少两个资源内容,所述资源内容之间包含有间隔符,以及该响应数据流的消息头中包含该间隔符和该内容块类型列表信 自,.或者,生成与该资源访问请求对应的响应数据流,该响应数据流的消息内容体包 含与所述至少两个URL信息对应的至少两个资源内容,以及该响应数据流的消 息头中包含该内容块类型列表信息和内容块大J 、列表信息,其中所述内容块大 小列表信息包括至少两个内容块大小信息。
11、 一种浏览器,其特征在于,包括第一通信模块,用于发送资源访问请求,该资源访问请求中包含至少两个URL信息,并接收返回的与该资源访问请求对应的响应数据流;第一解析模块,用于从所述响应数据流中解析出分隔信息,根据该分隔信 息从该响应数据流中获取到与所述至少两个URL信息中的每个URL信息对应的 资源内容;第一处理模块,用于根据每个资源内容的类型,对应处理所述每个资源内 容,实现网页页面的显示。
12、 如权利要求11所述的浏览器,其特征在于,所述第一解析模块为第 一资源内容解析模块,用于从所述响应数据流中解析得到内容块大小列表信 息,根据该内容块大小列表信息从该响应数据流中解析出每个与请求的URL 信息对应的资源内容,其中所述内容块大小列表信息包括至少两个内容块大小4吕息;或者,所述第一解析模块为第二资源内容解析模块,用于从该响应数据流 的消息头中解析出间隔符,根据该间隔符从该响应数据流的消息内容体中解析 出每个与请求的URL信息对应的资源内容,其中所述响应^:据流的消息内容体中资源内容之间包含有间隔符。
13、 如权利要求11或12所述的浏览器,其特征在于,所述第一处理模块 为第一显示处理模块,用于根据保存的所述至少两个URL信息中的每个URL 信息反映的资源内容类型,对应处理获取到的与每个URL信息对应的资源内 容,实现网页页面的显示;或者,所述第一处理模块为第二显示处理模块,用于根据每个内容块类型 信息所反映的资源内容的类型,对应处理所述资源内容,实现网页页面的显示, 其中所述第 一解析模块从所述响应数据流中进一步解析出内容块类型列表信息,所述内容块类型列表信息包括至少两个内容块类型信息。
14、 一种服务器,其特征在于,包括第二通信模块,用于接收资源访问请求,以及返回与该资源访问请求对应 的响应数据流,该响应数据流包含对应所述至少两个URL信息的至少两个资源 内容和分隔信息;第二解析模块,用于从所述资源访问请求中获得至少两个URL信息;第二处理;漠块,用于针对所述至少两个URL信息中的每个URL信息,获得 对应的资源内容,并通过所述第二通信^f莫块返回与该资源访问请求对应的响应 数据流,该响应数据流包含对应所述至少两个URL信息的至少两个资源内容和 分隔信息。
15、 如权利要求14所述的服务器,其特征在于,所述第二解析模块为消 息解析模块,用于从所述资源访问请求中解析出请求类型信息,在根据所述请 求类型信息确定该资源访问请求的类型为多个内容请求时,从所述资源访问请 求中获得至少两个URL信息。
16、 如权利要求14或15所述的服务器,其特征在于,第二处理模块为响 应处理模块,用于针对所述至少两个URL信息中的每个URL信息,获得对应的 资源内容,并通过所述第二通信模块返回与该资源访问请求对应的响应数据 流,该响应数据流包含对应所述至少两个URL信息的至少两个资源内容,以及 包含分隔信息和内容块类型列表信息的头信息,所述内容块类型列表信息包括 至少两个内容块类型信息。
17、 如权利要求16所述的服务器,其特征在于,所述响应处理模块为第 一响应处理模块,用于针对所述至少两个URL信息中的每个URL信息,获得对 应的资源内容,生成与该资源访问请求对应的响应数据流,该响应数据流的消 息内容体包含与所述至少两个URL信息对应的至少两个资源内容,所述资源内 容之间包含有间隔符,以及所述响应数据流的消息头中包含该内容块类型列表 信息和该间隔符,通过所述第二通信模块返回与该资源访问请求对应的响应数 据流;或者,所述响应处理模块为第二响应处理模块,用于针对所述至少两个URL信息中的每个URL信息,获得对应的资源内容,生成与该资源访问请求对 应的响应数据流,该响应数据流的消息内容体包含与所述至少两个URL信息对 应的至少两个资源内容,以及该响应数据流的消息头中包含该内容块类型列表 信息和内容块大小列表信息,所述内容块大小列表信息包括至少两个内容块大 小信息,通过所述第二通信模块返回与该资源访问请求对应的响应数据流。
18、 一种通信系统,其特征在于,包括浏览器,用于发送包含至少两个URL信息的资源访问请求,并接收返回的 与所述资源访问请求对应的响应数据流,根据从所述响应数据流中解析出的分 隔信息,从该响应数据流中解析出与所述至少两个URL信息中的每个URL信息 对应的资源内容;根据每个资源内容的类型,对应处理所述每个资源内容,实 现网页页面的显示;服务器,用于从接收的所述资源访问请求中获得至少两个URL信息,获得 与每个URL信息对应的资源内容,并返回与所述资源访问请求对应的响应数据 流,该响应数据流包含对应所述至少两个URL信息的至少两个资源内容和分隔"。
全文摘要
本发明实施例提供一种网页页面的显示方法、请求的处理方法、浏览器、服务器,以及通信系统,其中,Web页面的显示方法包括发送资源访问请求,该资源访问请求包括至少两个URL信息;接收返回的与该资源访问请求对应的响应数据流;从该响应数据流中解析出分隔信息,根据该分隔信息从该响应数据流中获取到与所述至少两个URL信息中的每个URL信息对应的资源内容;根据每个资源内容的类型,对应处理所述每个资源内容,实现网页页面的显示。使用本发明实施例的技术方案,实现通过单个请求得到网页页面显示所需要的多个资源内容,克服了目前客户端针对每个网页资源内容都需要向服务器端发一个请求的问题,从而减少了浏览器和服务器端的开销,提高了效率。
文档编号G06F17/30GK101477535SQ200810241999
公开日2009年7月8日 申请日期2008年12月30日 优先权日2008年12月30日
发明者刘建军 申请人:华为技术有限公司