Web页面数据的提供方法、web服务器及web应用系统的制作方法

文档序号:7722154阅读:128来源:国知局
专利名称:Web页面数据的提供方法、web服务器及web应用系统的制作方法
技术领域
本发明涉及网络技术,尤其涉及WEB页面数据的提供方法、WEB服务器及WEB应用 系统。
背景技术
WEB应用系统在企业中的应用越来越广泛,相对于需要安装客户单程序的普通图 形用户界面(GUI, Gr即hical User Interface)应用,WEB应用有许多优势。
在WEB应用中,客户端向WEB服务器发送携带统一资源定位符(URL, Uniform Resource Locator)的请求消息,以请求WEB服务器提供指定的WEB页面;WEB服务器根据 客户端的请求,查找到对应URL的文件,这个文件记录有上述指定的WEB页面的界面元素数 据;WEB服务器将WEB页面的当前业务数据记录在上述文件中;WEB服务器将上述文件发送 给客户端;客户端根据上述文件在用户使用的客户端上展示WEB页面。
本发明的发明人在仔细研究现有技术后发现,在实际应用中,客户端可能会多次 向WEB服务器请求同一个WEB页面。虽然WEB页面的业务数据可能会发生变化,但WEB页 面的界面元素数据一般不会发生变化。然而,WEB服务器针对客户端对同一个WEB页面的 请求,每次都要向客户端发送同一个WEB页面的界面元素数据。如果客户端每次都要向客 户端发送相同的界面元素数据,那么WEB服务器与客户端之间交互的数据量就会比较大, 这样会浪费大量的带宽资源。

发明内容
本发明提供WEB页面数据的提供方法、WEB服务器及WEB应用系统,用以减少WEB 服务器与客户端之间交互的数据量,避免浪费带宽资源。 为此,本发明提供一种WEB页面数据的提供方法,适用于包括WEB服务器和客户端 的WEB应用系统,所述方法包括WEB服务器获得客户端发出的对一个WEB页面的请求;所 述WEB服务器判断之前是否已经向所述客户端提供过所述WEB页面的界面元素数据;如果 所述WEB服务器确定之前已经向所述客户端提供过所述WEB页面的界面元素数据,则只向 所述客户端提供所述WEB页面的当前业务数据。 本发明还提供一种WEB服务器,适用于包括WEB服务器和客户端的WEB应用系统, 所述WEB服务器包括获得单元、判断单元和提供单元;所述获得单元,用于获得客户端发 出的对一个WEB页面的请求;所述判断单元,用于判断所述提供单元之前是否已经向所述 客户端提供过所述WEB页面的界面元素数据;所述提供单元,用于如果所述判断单元确定 所述提供单元之前已经向所述客户端提供过所述WEB页面的界面元素数据,则只向所述客 户端提供所述WEB页面的当前业务数据。 本发明还提供一种WEB应用系统,包括WEB服务器和客户端;所述WEB服务器,用 于获得客户端发出的对一个WEB页面的请求,并判断之前是否已经向所述客户端提供过所 述WEB页面的界面元素数据,如果确定之前已经向所述客户端提供过所述WEB页面的界面
4元素数据,则只向所述客户端提供所述WEB页面的当前业务数据。 由上述的几个技术方案可以看出,在WEB服务器获得客户端发出的对一个WEB页面的请求之后,如果WEB服务器确定之前已经向所述客户端提供过所述WEB页面的界面元素数据,那么可以只向所述客户端提供所述WEB页面的当前业务数据。也就是说,WEB服务器不必每次都向客户端提供相同的界面元素数据,这样就减少了 WEB服务器与客户端之间交互的数据量,从而避免了对带宽资源的浪费。


图1为WEB应用系统的逻辑结构示意图; 图2为本发明的一种WEB页面数据的提供方法的流程图; 图3为本发明的一种WEB服务器的逻辑结构示意图。
具体实施例方式
为使本领域技术人员更加容易的理解本发明,首先介绍本发明涉及的一些专业知识。 WEB页面的界面元素数据描述组成WEB页面的控件,具体来说,描述控件在WEB
页面上的位置、控件的前后背景色、控件的字体以及控件之间的包含关系等信息。 WEB页面的业务数据描述WEB页面显示的具体内容,例如WEB页面上的文字信
息、图片、视频等内容。 WEB页面的语言信息描述WEB页面所使用的语言风格,例如说明WEB页面使用的是中文还是其他语言。 WEB页面的版本信息描述WEB页面的版本信息,例如WEB页面的版本号等版本标识。 WEB页面的帐套信息描述WEB页面的来源,例如说明WEB页面来自哪个数据库服务器。 本发明的技术方案可以适用于图1所示的WEB应用系统。如图l所示,WEB应用系统包括WEB服务器IOI和客户端102, WEB服务器101可以与客户端102进行交互,例如,客户端102可以向WEB服务器101请求提供WEB页面,WEB服务器101可以向客户端102提供客户端102所请求的WEB页面的界面元素数据和业务数据。 需要说明的是,图1只是WEB应用系统的一种示意图,其中的WEB服务器101和客户端102的数量只是举例而已,在实际应用中,WEB服务器101和客户端102的数量、部署的位置可以根据实际需要而设置。 首先介绍本发明的一种WEB页面数据的提供方法。如图2所示,这种方法包括
S201 :WEB服务器获得客户端发出的对一个WEB页面的请求。 使用客户端的用户如果需要在客户端上打开某个WEB页面,那么用户需要在客户端上输入这个WEB页面的地址,也就是输入这个WEB页面的URL。之后,客户端会向WEB服务器发出携带这个WEB页面的URL的超文本传输协议(HTTP, Hyper Text TransferProtocol)请求消息,这样,WEB服务器就获得了客户端发出的携带这个WEB页面的URL的HTTP请求消息。HTTP请求消息的头部可以携带有如果没有匹配(If-None-Match)扩展属
5性,其中,HTTP请求消息的头部可以称为HTTP请求头(HTTP Request Head)。如果这个客户端之前获得过WEB服务器提供的这个WEB页面,那么If-None-Match扩展属性可以携带有这个WEB页面的语言信息、版本信息和帐套信息,语言信息指明了这个WEB页面所使用的语言,版本信息指明了这个WEB页面的版本号,帐套信息指明了这个WEB页面来源于哪个数据库服务器。如果这个客户端之前没有获得过WEB服务器提供的这个WEB页面,或者说,如果这个客户端首次请求这个WEB页面,那么If-None-Match扩展属性的信息可以为空。
执行S201后,执行S202 :所述WEB服务器判断之前是否已经向所述客户端提供过所述WEB页面的界面元素数据。 在实际应用中,WEB服务器可以通过多种方式判断之前是否已经向客户端提供过客户端请求的WEB页面的界面元素数据。例如,WEB服务器可以将客户端发出的请求所携带的WEB页面的语言信息、版本信息和帐套信息与WEB页面的当前语言信息、当前版本信息和当前帐套信息进行比较。如果上述请求所携带的WEB页面的语言信息、版本信息和帐套信息与WEB页面的当前语言信息、当前版本信息和当前帐套信息对应相同,那么WEB服务器可以确定之前已经向客户端提供过请求的WEB页面的界面元素数据,否则,WEB服务器确定之前没有向客户端提供过请求的WEB页面的界面元素数据。 需要说明的是,客户端发出的请求所携带的WEB页面的语言信息、版本信息和帐套信息与WEB页面的当前语言信息、当前版本信息和当前帐套信息对应相同是指,客户端发出的请求所携带的WEB页面的语言信息与WEB页面的当前语言信息相同,客户端发出的请求所携带的WEB页面的版本信息与WEB页面的当前版本信息相同,客户端发出的请求所携带的WEB页面的帐套信息与WEB页面的当前帐套信息相同。 需要说明的是,如果客户端发出的请求没有携带WEB页面的语言信息、版本信息和帐套信息,那么WEB服务器在进行比较时,可以确定语言信息、版本信息和帐套信息不会对应相同,从而可以确定之前没有向客户端提供过请求的WEB页面的界面元素数据。
还需要说明的是,WEB服务器还可以通过其他方式判断之前是否已经向客户端提供过客户端请求的WEB页面的界面元素数据,例如,客户端可以在发给WEB服务器的HTTP请求消息中携带有一个标识,这个标识用于表明客户端之前已经获得过所请求的WEB页面的界面元素数据,WEB服务器根据这个标识可以确定之前已经向客户端提供过客户端请求的WEB页面的界面元素数据。当然,WEB服务器还可以通过其他方式判断之前是否已经向客户端提供过客户端请求的WEB页面的界面元素数据,这里不再一一举例说明。
执行S202后,执行S203 :如果所述WEB服务器确定之前已经向所述客户端提供过所述WEB页面的界面元素数据,则只向所述客户端提供所述WEB页面的当前业务数据。
—般情况下, 一个WEB页面的界面元素数据不会发生变化,但这个WEB页面的业务数据可能会经常发生变化。所以,如果WEB服务器确定之前已经向客户端提供过这个客户端请求的WEB页面的界面元素数据,那么WEB服务器可以不再向客户端提供客户端请求的WEB页面的界面元素数据,而是可以只向客户端提供客户端请求的WEB页面的当前业务数据。 可选的,客户端可以向WEB服务器发出提供WEB页面的当前业务数据的请求,WEB服务器可以根据这个请求再向客户端提供WEB页面的当前业务数据。也就是说,WEB服务器可以在获得客户端发出的提供WEB页面的当前业务数据的请求后,再向客户端提供WEB页面的当前业务数据。这种情况下,WEB服务器对于客户端发出的对WEB页面的请求,可以只确定是否提供WEB页面的当前界面元素数据,客户端发出的对WEB页面的请求可以不作为WEB服务器向客户端提供WEB页面的当前业务数据的触发。具体的,客户端可以向WEB服务器发出一个请求消息,这个请求消息可以携带WEB页面的URL,这个请求消息可以携带一个标识,用于表明只请求WEB页面的业务数据。 可选的,WEB服务器在判断之前是否已经向客户端提供过WEB页面的界面元素数据之后,可以向客户端返回一个信息,用以指示客户端请求的WEB页面是否是之前提供过的WEB页面或者是否会再向客户端提供客户端请求的WEB页面的界面元素数据等,以使客户端明确之前保存的WEB页面的界面元素数据是否发生变化或者WEB服务器是否会再次提供WEB页面的界面元素数据。 可选的,如果WEB服务器确定之前已经向客户端提供过WEB页面的界面元素数据,那么WEB服务器可以向客户端返回一个指示之前已经提供过所述WEB页面的界面元素数据或者不再向客户端提供所述WEB页面的界面元素数据的信息,客户端获得这样的信息后,可以向WEB服务器发出请求提供所述WEB页面的业务数据的请求消息。
需要说明的是,如果WEB服务器确定之前没有向客户端提供过WEB页面的界面元素数据,那么WEB服务器可以将WEB页面的界面元素数据提供给客户端,并将WEB页面的当前语言信息、当前版本信息和当前帐套信息提供给客户端。具体的,WEB服务器可以将WEB页面的当前语言信息、当前版本信息和当前帐套信息携带在HTTP响应消息携带的实体标记(ETAG, Entity TAG)扩展属性中提供给客户端,ETAG扩展属性携带在HTTP响应消息的头部中,HTTP响应消息的头部可以称为HTTP响应头(HTTP RESPONSEHEAD)。需要说明的是,HTTP响应头携带的ETAG扩展属性与HTTP请求头携带的If-None-Match扩展属性是对应的,例如,如果WEB服务器之前向客户端发出的HTTP响应消息携带的ETAG扩展属性的值包括WEB页面的语言信息、版本信息和帐套信息,那么当客户端需要再次请求同一个WEB页面时,客户端发给WEB服务器的HTTP请求消息携带的If-None-Match扩展属性的值可以是上述HTTP响应消息携带的ETAG扩展属性的值,即,包括WEB页面的语言信息、版本信息和帐套信息。 对应于图2所示的方法,本发明还提供一种WEB服务器。如图3所示,这种WEB服务器包括获得单元301、判断单元302和提供单元303 ;获得单元301,用于获得客户端发出的对一个WEB页面的请求;判断单元302,用于判断提供单元303之前是否已经向所述客户端提供过所述WEB页面的界面元素数据;提供单元303,用于如果判断单元302确定提供单元303之前已经向所述客户端提供过所述WEB页面的界面元素数据,则只向所述客户端提供所述WEB页面的当前业务数据。 在实际应用中,客户端发出的对上述WEB页面的请求可以携带有上述WEB页面的语言信息、版本信息和帐套信息。 可选的,判断单元302可以包括比较子单元,用于将上述请求携带的上述WEB页面的语言信息、版本信息和帐套信息与上述WEB页面的当前语言信息、当前版本信息和当前帐套信息进行比较;确定子单元,用于如果上述请求携带的上述WEB页面的语言信息、版本信息和帐套信息与上述WEB页面的当前语言信息、当前版本信息和当前帐套信息对应相同,则确定之前已经向客户端提供过上述WEB页面的界面元素数据,否则,确定之前没有向
7客户端提供过上述WEB页面的界面元素数据。 在实际应用中,客户端发出的对上述WEB页面的请求是HTTP请求消息,HTTP请求消息可以携带有If-None-Match扩展属性,If-None-Match扩展属性可以携带有上述WEB页面的语言信息、版本信息和帐套信息。 在获得单元301获得客户端发出的对一个WEB页面的请求之后,如果判断单元302确定提供单元303之前没有向客户端提供过上述WEB页面的界面元素数据,则提供单元303将上述WEB页面的界面元素数据提供给客户端,并将WEB页面的当前语言信息、当前版本信息和当前帐套信息提供给客户端。 提供单元303可以将上述WEB页面的当前语言信息、当前版本信息和当前帐套信息携带在HTTP响应消息携带的ETAG扩展属性中提供给客户端。 在提供单元303将上述WEB页面的当前业务数据提供给客户端之前,获得单元301可以获得客户端发出的提供上述WEB页面的当前业务数据的请求。 需要说明的是,由于上述WEB服务器与图2所示的方法是对应的WEB服务器,所以,上述WEB服务器中的各个单元的功能以及各个单元之间的配合关系可以参照图2所示的方法中的相关描述,这里不再赘述。 前面提到过,本发明提供的技术方案可以适用于WEB应用系统,所以,本发明还提供一种WEB应用系统,如图1所示,这种WEB应用系统包括WEB服务器101和客户端102 ;WEB服务器IOI,用于获得客户端102发出的对一个WEB页面的请求,并判断之前是否已经向客户端102提供过所述WEB页面的界面元素数据,如果WEB服务器101确定之前已经向客户端102提供过所述WEB页面的界面元素数据,则只向客户端102提供所述WEB页面的当前业务数据。 上述WEB应用系统的WEB服务器101和客户端102的功能以及相互配合关系可以参照图2所示的方法和图3所示的WEB服务器中的相关描述,这里不再赘述。
为使本领域技术人员更加清楚的理解本发明的技术方案,下面再以一个应用场景为例,来说明本发明的技术方案。 假设客户端1已经从WEB服务器1获得过WEB页面1的界面元素数据和业务数据,之后,客户端1再次向WEB服务器1请求WEB页面1。再假设在WEB服务器1获得请求时,WEB页面1的界面元素数据没有发生变化,但WEB页面1的业务数据已经发生变化。
基于上述的应用场景,客户端1的处理方式、WEB服务器1的处理方式以及客户端1与WEB服务器1之间交互的流程如下 1.客户端1向WEB服务器1发出HTTP请求消息,HTTP请求消息携带有WEB页面1的URL,并在HTTP请求头中携带有If-None-Match扩展属性,If-None-Match扩展属性携带有WEB页面1的语言信息、版本信息和帐套信息; 2. WEB服务器1解析HTTP请求消息,通过WEB页面1的URL确定存储WEB页面1的界面元素数据和业务数据等相关数据的数据库服务器; 3. WEB服务器1从上述确定的数据库服务器中获得WEB页面1的当前语言信息和当前版本信息; 4. WEB服务器1将HTTP请求消息携带的WEB页面1的语言信息与WEB页面1的当前语言信息进行比较,确定HTTP请求消息携带的WEB页面1的语言信息与WEB页面1的
8当前语言信息相同,将HTTP请求消息携带的WEB页面1的版本信息与WEB页面1的当前版
本信息进行比较,确定HTTP请求消息携带的WEB页面1的版本信息与WEB页面1的当前版
本信息相同,并且,确定HTTP请求消息携带的帐套信息就是上述确定的数据库服务器的信
息,也就是说,WEB页面1的语言信息、版本信息和帐套信息都没有发生变化; 5. WEB服务器1从上述确定的数据库服务器中获得WEB页面1的当前业务数据; 6. WEB服务器1将WEB页面1的当前业务数据提供给客户端1 ; 7.客户端1根据之前获得的WEB页面1的界面元素数据和在步骤6获得的当前业
务数据,生成WEB页面1 ,并展示WEB页面1 。 综上所述,在本发明中,在WEB服务器获得客户端发出的对一个WEB页面的请求之后,如果WEB服务器确定之前已经向所述客户端提供过所述WEB页面的界面元素数据,那么可以只向所述客户端提供所述WEB页面的当前业务数据。也就是说,WEB服务器不必每次都向客户端提供相同的界面元素数据,这样就减少了 WEB服务器与客户端之间交互的数据量,从而避免了对带宽资源的浪费。 另外,WEB服务器可以以WEB页面的语言信息、版本信息和帐套信息为基准,判断之前是否向客户端提供过客户端请求的WEB页面,这说明,本发明的技术方案可以适用于多语言、多帐套的应用环境。 以上所述仅是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以作出若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。
权利要求
一种WEB页面数据的提供方法,其特征在于,适用于包括WEB服务器和客户端的WEB应用系统,所述方法包括WEB服务器获得客户端发出的对一个WEB页面的请求;所述WEB服务器判断之前是否已经向所述客户端提供过所述WEB页面的界面元素数据;如果所述WEB服务器确定之前已经向所述客户端提供过所述WEB页面的界面元素数据,则只向所述客户端提供所述WEB页面的当前业务数据。
2. 如权利要求l所述的方法,其特征在于,所述客户端发出的对所述WEB页面的请求携 带有所述WEB页面的语言信息、版本信息和帐套信息;所述WEB服务器按照下述方式判断之前是否已经向所述客户端提供过所述WEB页面的 界面元素数据所述WEB服务器将所述请求携带的所述WEB页面的语言信息、版本信息和帐套信息与 所述WEB页面的当前语言信息、当前版本信息和当前帐套信息进行比较;如果所述请求携带的所述WEB页面的语言信息、版本信息和帐套信息与所述WEB页面 的当前语言信息、当前版本信息和当前帐套信息对应相同,则所述WEB服务器确定之前已 经向所述客户端提供过所述WEB页面的界面元素数据,否则,所述WEB服务器确定之前没有 向所述客户端提供过所述WEB页面的界面元素数据。
3. 如权利要求2所述的方法,其特征在于,所述客户端发出的对所述WEB页面的请求 是超文本传输协议HTTP请求消息,所述HTTP请求消息携带有如果没有匹配If-None-Match 扩展属性,所述If-None-Match扩展属性携带有所述WEB页面的语言信息、版本信息和帐套 信息。
4. 如权利要求l所述的方法,其特征在于,在所述WEB服务器获得客户端发出的对一个 WEB页面的请求之后,还包括如果所述WEB服务器确定之前没有向所述客户端提供过所述 WEB页面的界面元素数据,则所述WEB服务器将所述WEB页面的界面元素数据提供给所述客 户端,并将所述WEB页面的当前语言信息、当前版本信息和当前帐套信息提供给所述客户丄山顺。
5. 如权利要求4所述的方法,其特征在于,所述WEB服务器将所述WEB页面的当前语言 信息、当前版本信息和当前帐套信息携带在HTTP响应消息携带的实体标记ETAG扩展属性 中提供给所述客户端。
6. 如权利要求1所述的方法,其特征在于,在所述WEB服务器将所述WEB页面的当前 业务数据提供给所述客户端之前,还包括所述WEB服务器获得客户端发出的提供所述WEB 页面的当前业务数据的请求。
7. —种WEB服务器,其特征在于,适用于包括WEB服务器和客户端的WEB应用系统,所 述WEB服务器包括获得单元、判断单元和提供单元;所述获得单元,用于获得客户端发出的对一个WEB页面的请求;所述判断单元,用于判断所述提供单元之前是否已经向所述客户端提供过所述WEB页 面的界面元素数据;所述提供单元,用于如果所述判断单元确定所述提供单元之前已经向所述客户端提供 过所述WEB页面的界面元素数据,则只向所述客户端提供所述WEB页面的当前业务数据。
8. 如权利要求7所述的WEB服务器,其特征在于,所述客户端发出的对所述WEB页面的 请求携带有所述WEB页面的语言信息、版本信息和帐套信息;所述判断单元包括比较子单元,用于将所述请求携带的所述WEB页面的语言信息、版 本信息和帐套信息与所述WEB页面的当前语言信息、当前版本信息和当前帐套信息进行比 较;确定子单元,用于如果所述请求携带的所述WEB页面的语言信息、版本信息和帐套信息 与所述WEB页面的当前语言信息、当前版本信息和当前帐套信息对应相同,则确定之前已 经向所述客户端提供过所述WEB页面的界面元素数据,否则,确定之前没有向所述客户端 提供过所述WEB页面的界面元素数据。
9. 如权利要求8所述的WEB服务器,其特征在于,所述客户端发出的对所述WEB页 面的请求是HTTP请求消息,所述HTTP请求消息携带有I f-None-Match扩展属性,所述 If-None-Match扩展属性携带有所述WEB页面的语言信息、版本信息和帐套信息。
10. 如权利要求7所述的WEB服务器,其特征在于,在所述获得单元获得客户端发出的 对一个WEB页面的请求之后,如果所述判断单元确定所述提供单元之前没有向所述客户端 提供过所述WEB页面的界面元素数据,则所述提供单元将所述WEB页面的界面元素数据提 供给所述客户端,并将所述WEB页面的当前语言信息、当前版本信息和当前帐套信息提供 给所述客户端。
11. 如权利要求10所述的WEB服务器,其特征在于,所述提供单元将所述WEB页面的当 前语言信息、当前版本信息和当前帐套信息携带在HTTP响应消息携带的ETAG扩展属性中 提供给所述客户端。
12. 如权利要求7所述的WEB服务器,其特征在于,在所述提供单元将所述WEB页面的 当前业务数据提供给所述客户端之前,所述获得单元获得客户端发出的提供所述WEB页面 的当前业务数据的请求。
13. —种WEB应用系统,其特征在于,包括WEB服务器和客户端; 所述WEB服务器,用于获得客户端发出的对一个WEB页面的请求,并判断之前是否已经向所述客户端提供过所述WEB页面的界面元素数据,如果确定之前已经向所述客户端提供 过所述WEB页面的界面元素数据,则只向所述客户端提供所述WEB页面的当前业务数据。
全文摘要
本发明提供一种WEB页面数据的提供方法,适用于包括WEB服务器和客户端的WEB应用系统,所述方法包括WEB服务器获得客户端发出的对一个WEB页面的请求;所述WEB服务器判断之前是否已经向所述客户端提供过所述WEB页面的界面元素数据;如果所述WEB服务器确定之前已经向所述客户端提供过所述WEB页面的界面元素数据,则只向所述客户端提供所述WEB页面的当前业务数据。本发明还提供一种WEB服务器和WEB应用系统。本发明可以减少WEB服务器与客户端之间交互的数据量,从而避免了对带宽资源的浪费。
文档编号H04L29/08GK101764840SQ20091025257
公开日2010年6月30日 申请日期2009年12月29日 优先权日2009年12月29日
发明者董洪兵 申请人:金蝶软件(中国)有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1