CN100550013C - 客户端计算机显示数据的方法 - Google Patents
客户端计算机显示数据的方法 Download PDFInfo
- Publication number
- CN100550013C CN100550013C CNB2005101166560A CN200510116656A CN100550013C CN 100550013 C CN100550013 C CN 100550013C CN B2005101166560 A CNB2005101166560 A CN B2005101166560A CN 200510116656 A CN200510116656 A CN 200510116656A CN 100550013 C CN100550013 C CN 100550013C
- Authority
- CN
- China
- Prior art keywords
- webpage
- client computer
- script
- embedding
- dynamic
- 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.)
- Expired - Fee Related
Links
- 238000000034 method Methods 0.000 title claims abstract description 31
- 230000003068 static effect Effects 0.000 claims abstract description 44
- 230000006870 function Effects 0.000 claims description 27
- 238000004891 communication Methods 0.000 claims description 20
- 230000007246 mechanism Effects 0.000 claims description 20
- 230000008569 process Effects 0.000 claims description 7
- 238000005429 filling process Methods 0.000 claims description 4
- 238000005516 engineering process Methods 0.000 description 5
- 230000004044 response Effects 0.000 description 5
- 230000008901 benefit Effects 0.000 description 4
- 238000010586 diagram Methods 0.000 description 4
- 241001269238 Data Species 0.000 description 2
- 230000006399 behavior Effects 0.000 description 2
- GOLXNESZZPUPJE-UHFFFAOYSA-N spiromesifen Chemical compound CC1=CC(C)=CC(C)=C1C(C(O1)=O)=C(OC(=O)CC(C)(C)C)C11CCCC1 GOLXNESZZPUPJE-UHFFFAOYSA-N 0.000 description 2
- 235000006719 Cassia obtusifolia Nutrition 0.000 description 1
- 235000014552 Cassia tora Nutrition 0.000 description 1
- 244000201986 Cassia tora Species 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 238000004422 calculation algorithm Methods 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 230000002708 enhancing effect Effects 0.000 description 1
- 230000008676 import Effects 0.000 description 1
- 238000010295 mobile communication Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 238000000926 separation method Methods 0.000 description 1
- 239000002699 waste material Substances 0.000 description 1
Images
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/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
技术领域
本发明涉及在客户端计算机上显示数据的方法,用于在客户端计算机上显示数据的计算机可执行软件代码以及客户端计算机。本发明基于在先申请EP 04292833.3,通过参考将其引入于此。
背景技术
因特网上的web服务器提供通常以HTML(超文本标记语言)编码的具有图形网页的网站,其中连接到因特网的或者通过本地网络,例如局域网(LAN)与web服务器连接的客户端计算机可以访问这些网站。客户端计算机使用允许用户下载网页以及在客户端计算机上显示网页的浏览器。
基于web的用户界面通常是缓慢的。当web服务器和客户端计算机之间的因特网连接很弱(例如64kB/s),用户数目巨大,提供页面的服务器配有较小的内存和/或CPU资源或者客户端设备很小,例如是PDA(个人数字助理)、商务电话、移动电话或者智能电话时,该界面就更加缓慢了。
为了加快基于web的用户界面的响应时间,已知在客户端侧(浏览器高速缓存)或者中间代理(客户端和服务器之间的代理)上使用高速缓存技术。但是,高速缓存仅仅在已经下载了相同的页面时加速页面的下载。
该网页可以具有保持不变的静态数据和在网页上变化的动态数据。
例如,JSP页面(JSP=Java服务器端页面)使将网页的动态部分从静态HTML分离成为可能。人们简单地以通常的方式编写常规的HTML并且在特定的标签中包括用于动态数据的代码。人们所写的通常看起来更像常规的HTML文件而不是小服务程序(servlet),然后在后台,JSP页面才转换成通常的小服务程序。这通常在该页面被第一次请求时完成。小服务程序输出与小服务程序服务方法相关联的静态HTML。这种页面不总是相同的,使得人们在客户端侧或者代理上都无法对其进行高速缓存。利用JSP技术,JSP页面无法高速缓存并且该页面由小服务程序容器进行分析,这占用服务器的时间和资源。这种问题同样存在于其它种类的动态网页上,例如ASP、PHP或者SSI页面(ASP=动态服务器页面;PHP=超文本预处理器;SSI=服务器端包含)。
当网页包含动态数据时,网页必须周期性地进行刷新或者重新载入,以正确地反映任何变动的数据。浏览器必须持续地下载网页数据并更新已经下载的网页。一些浏览器试图通过在将网页下载到浏览器时使用高速缓存方案来存储HTML网页以提高效率。当网页必须被刷新时,浏览器重新下载整个网页,接受那些在已经在高速缓存中的在网页上使用的文件。如果请求刷新动态数据,则传统的浏览器简单地重新载入整个网页,但是该整个的重新载入是缓慢的并且占用大量系统资源。另一个在浏览器上刷新网页的方法是在网页上包括刷新小程序,其指示浏览器以预先确定的时间间隔更新网页。
但是,所有这些方法在更新下载到浏览器上的网页时都不区分网站上的静态和动态数据。
发明内容
本发明的目标是加速基于web的界面的响应时间。
本发明的目标通过在客户端计算机上显示数据的方法来实现,该方法包括以下步骤:从web服务器发送网页特别是HTML页面到客户端计算机,该网页包括图形用户界面的静态数据以及至少一个用于包括网页动态部分的嵌入,其中所述嵌入指向位于网络服务器上并且适于输出脚本的程序;将网页存储在客户端计算机的高速缓存中;将脚本从网络服务器传送到客户端计算机,该脚本包括由该程序产生的动态数据;通过动态数据将动态部分包括到网页的静态部分中;以及通过在客户端计算机上执行的浏览器显示该网页。本发明的目标进一步由用于在客户端计算机上显示数据的计算机可执行软件代码来实现,该代码包括:该代码包括:将从web服务器发送到客户端计算机的代码,该代码指定了一个网页,特别是HTML页面,其中该网页包含图形用户界面的静态数据和至少一个用于包括该网页的动态部分的嵌入,其中所述嵌入指向位于网络服务器上并且适于输出脚本的程序;以及用于通过由该程序产生的并且通过该脚本从该网络服务器传送到该客户端计算机的动态数据将该动态部分包括到该网页的静态部分中的代码。本发明的目标进一步通过客户端计算机来实现,其包括:用于从web服务器获取网页的通信单元;用于存放网页特别是HTML页面的存储器,该网页包括图形用户界面的静态数据以及至少一个用于包括该网页动态部分的嵌入,其中所述嵌入指向位于网络服务器上并且适于输出脚本的程序,该脚本包含由该程序产生的动态数据;以及浏览器,其适于将从该web服务器获取的该网页存储在高速缓存中,通过由该脚本传送的所述动态数据将该动态部分包括到该网页的静态部分中,并且显示该网页。
本发明使得将静态部分,即静态GUI(图形用户界面)从动态部分(动态数据)中完全分离出来成为可能,并且允许最大化的使用经典的高速缓存技术以减少将在客户端和服务器之间传送的数据量。其还从用户体验的角度提高了速度感。
在因特网上通常的数据库驱动的/数据集中的网页应用程序中,50%到90%的网页内容是静态信息。结合最大化使用经典的高速缓存技术获得的优势,本发明所达到的时间响应优势在35%到75%之间。本发明提高了响应时间、高速缓存的利用,并且允许静态GUI和动态数据之间的分离,从而引入了可以由不同开发者完成工作的决策模型。
进一步,本发明使得将图形用户界面的静态数据和动态数据托管在因特网上的不同服务器上成为可能。优选地,静态数据,即HTML网页,和动态数据,即服务器端程序,例如小服务程序,由不同种类的适用于各自数据的特定要求的服务器基础设施来处理。例如,通过web服务基础设施的不同地理分布服务器托管HTML网页,而通过专用的应用程序服务器托管小服务程序。这种方法提高了系统的速度和可靠性。
进一步的优点由附属权利要求指示的本发明的实施例来实现。
嵌入由一个标准嵌入来完成,例如,标准javascript嵌入,但是URL(统一资源定位符)不是一个javascript文件而是将脚本输出到其标准输出上的程序(ASP,JSP,PHP,小服务程序,C/C++程序或者任何语言编写的程序)
优选地,网页是指定图形用户界面(GUI)的静态部分并且具有一个iavascript嵌入集合的HTML页面。HTML页面编码了包括窗口小部件、文本、动态行为(表示“如果...那么将禁用该按钮”的函数)的图形用户界面。如果该GUI被设计得很好,则其可以完全独立于传到该GUI的数据。因此,可以说该GUI是“静态的”。动态数据包括可以实例化GUI以填充域的信息。基于网页的javascript嵌入的嵌入机制将动态部分包括到静态部分中而不影响高速缓存(代理或者客户端侧)机制。
根据本发明的优选实施例,客户端计算机执行自动使用由嵌入提供的数据以填充域的自动数据填充机制。下载到客户端计算机的网页包含适于执行该自动填充过程的脚本。客户端计算机使用该自动数据填充过程来填充网页域,即利用由嵌入所提供的对应动态数据填充HTML域。
动态部分可以总结为变量赋值,例如,javascript变量集合。优选地,存在一个命名惯例要求HTML表单域和那些javascript变量取相同的名字。网络服务器包括一个或者多个代表javascript中动态数据的javascript变量。客户端计算机使用包含在获取的脚本中的对应javascript变量自动地填充具有与这些javascript变量相同名字的HTML表单域。这个过程提供了强大的机制将动态部分包括进静态部分而不影响高速缓存机制。
根据本发明的优选实施例,客户端计算机执行函数,该函数读取当前的查询串,用获取的查询串计算文件路径并且用链接的结果动态地构建用于包括网页动态部分的嵌入。
该方案解决了查询串发布问题。例如,人们想要描述一个列出用户的GUI。为了访问第五个用户,URL可以是:
http://myServer/user.html?id=5
考虑getUser是为给定用户提供数据的程序。user.html文件是包括使用下列指令的动态数据的javascript嵌入的静态HTML文件。
<script language=“javascript”src=“/servlets/getUser”></script>
这里的问题是getUser程序不知道需要显示哪个用户。必须告诉getUser程序想要第五个用户的数据。换句话说,想要将原始的查询串(在原始URL中的“?”字符之后的所有字符)告知在javascript中调用的程序。这必须通过使用称为insertJSFile()的javascript函数而不是使用<script>标签来完成,如下例所示:
<script>insertJSFile(“/servlets/getUser”);</script>
insertJSFile(filePath)函数读取当前的查询串,将该filePath和获取的查询串链接起来,并且用链接的结果来编写<script>标签。
例如,该函数将动态的构建下列标签:
<script language=“javascript”src=“/servlets/getUser?id=5”></script>
根据本发明的另一个优选的实施例,客户端计算机在其上执行能够自动产生随机数字并且将其加入到该嵌入的查询串中的函数。该方法防止对程序的脚本输出进行高速缓存。当参照程序使用<script>标签时,一些浏览器将不会正确地工作。例如,Internet Explorer会高速缓存程序的javascript输出,这是内存空间的一种浪费,因为它们是不必被高速缓存的动态数据。因为高速缓存了动态数据,浏览器将总是会返回相同的数据(高速缓存中的信息),即使数据已经改变了。函数自动地产生随机化的数字并且将其加到查询串的末端,使得浏览器将永远不能高速缓存该动态数据,因为浏览器使用完整的URL和查询串一起来识别要高速缓存的文件。
根据本发明的一个优选实施例,客户端计算机执行对下一个文件的后台预先装载。客户端计算机执行对于以后可能需要的文件的后台预先装载机制。预先装载机制选择、下载可能需要的文件并将其存储到客户端计算机的高速缓存中。利用这种后台预先装载,用户甚至在低带宽下也会体验到非常小的响应时间。当装载一个网页时,用户通常需要思考一会儿,然后才使用他的输入设备(键盘、鼠标、PDA笔等)执行一些动作。用户的思考时间和对键盘、鼠标或者任何输入设备的使用被用来在后台下载用户可能使用的下一个文件。优选地,使用隐藏框在后台完成预先装载,使得在需要之前用户将不会看见该网页。优选地,从web服务器下载的网页具有用于隐藏框的脚本,并且该脚本适于执行网页特定的预先装载机制,并且客户端计算机在后台在浏览器的隐藏框内执行该网页特定的预先装载机制。
优选地,下一个文件利用下面的算法进行预先装载:
建立用来指示可能需要的后续网页的图形,其中该图形代表访问这些页面的概率。游历过程优选那些具有最高概率的分支对图形进行游历。游历过程选择一些网页。在隐藏框中,在后台下载每一个选择的网页。在下载期间,相关联的文件(例如,图像,CSS=层叠样式表单,javascripts)也通过使用网页中的超链接引用自动地下载。所有文件放置在浏览器的高速缓存中,使得当用户传送后续的页面时,所有静态的东西都会从高速缓存中下载,即使用户第一次看见该页面。只有动态数据将会在网络上下载。
附图说明
通过结合附图阅读下面的当前优选示例性实施例的详细描述将会更好地理解本发明的这些和其它特征和优点,其中:
图1是通过通信网络互连的服务器和客户端计算机的框图,框图说明了对网页的第一次访问。
图2是根据图1的服务器和客户端计算机的框图,其中框图说明了对该网页的第二次访问。
图3是举例说明根据本发明的执行方法的功能性视图。
具体实施方式
图1表示了通信网络1、两个服务器2和3以及客户端计算机4。
通信网络1是使用IP协议(IP=因特网协议)作为公共第三通信层的数据网络。通信网络1可以由各种不同的物理网络,例如,ATM网络、MPLS网络或者以太网(ATM=异步传输模式,MPLS=多协议标签交换)组成。进一步,客户端计算机4可以通过无线接入网络,例如GSM网络、UMTS网络或者WLAN网络(GSM=全球移动通信系统,UMTS=通用移动通信系统)与服务器2和服务器3连接。
优选地,通信网络1是因特网。
服务器3是在通信网络1中提供网页的web服务器。从功能的角度来看,服务器3具有用于存储多个网页,例如网页32和网页33的数据库31,以及适于将这种网页下载到请求的客户端计算机的控制单元34。
优选地,服务器3代表了具有各种本地分布的web服务器的服务器基础设施,其中web服务器在各自的专用的区域提供存储在数据库31中的网页的内容(即根据获取各自网页的客户端计算机的位置将各自网页的URL(统一资源定位符)映射到不同的web服务器)。这种服务系统加速了服务器3上托管的网页的下载。
服务器2是服务特定的基于web的应用程序的网络服务器,例如,因特网支付服务。从功能的角度来看,服务器2包括提供基于web的应用程序之动态数据的程序容器21、数据库26以及,可选地,向容器21的程序提供服务的另一些程序的集合25。将容器21的程序编码成ASP、JSP、PHP、小服务程序、C/C++程序或者其它任何语言的程序(ASP=动态服务器页面;JSP=Java服务器页面;PHP=PHP超文本预处理器)。通过通信网络1经由分配的URL对这些程序进行寻址并可进行访问。程序输出包含基于web的应用程序之动态数据的脚本作为标准输出。容器21的程序访问由数据库26提供的数据源和程序25的服务,以产生基于web的应用程序的动态数据。进一步,容器21的程序可以作为代理对象的集合,例如,java-beans,来与由程序25提供的服务逻辑进行接口连接。
优选地,容器21是小服务程序容器并且容器21的程序是java小服务程序。
进一步,可以由相同的物理服务器或者服务基础设施提供服务器2和服务器3的功能,即网页和容器21的程序托管于同一个服务器。
客户端计算机4是个人计算机、PDA(个人数字助理)或者电话,例如智能电话或者其它任何种类的增强蜂窝电话。
客户端计算机4包括具有至少一个微处理器和数据存储的电路,由至少一个微处理器执行的软件代码,用于通过通信网络1通信的通信设备以及多种输入/输出设备,例如液晶显示器、小键盘、麦克风、扩音器或者鼠标板。客户端计算机4的功能是通过基于由客户端计算机4的组件提供的硬件平台执行软件代码来实现的。从功能的角度来看,客户端计算机4包括通信单元41、高速缓存43、浏览器42和输出单元44。
通信单元41包括通过通信网络1进行通信所需要的客户端计算机4的物理和逻辑组件。例如,通信单元41包含处理TCP/IP协议栈(TCP=传输控制协议,IP=因特网协议)的必要功能。浏览器4是标准的浏览器应用程序,例如,Internet Explorer。输出单元44代表了浏览器42使用的输出设备,例如,液晶显示器或者监视器和扩音器。
当生成基于web的应用程序时,用户界面被编码成两个独立的部分:
第一,静态图形用户界面(GUI),其包括网页的集合,其中网页包括窗口小部件、文本、动态行为(例如表示“如果...那么将禁用该按钮”的函数)。例如,网页32和网页33指定了GUI的静态部分。
第二,动态部分,其包括用来实例化GUI的动态数据。动态部分通过容器21的程序来编码,例如,通过程序22、23和24。
将网页32和网页33编码成可以被浏览器42高速缓存的标准的HTML页面。这些HTML页面包含嵌入,即将文件装载进网页的函数,用来包括网页的动态部分。嵌入的URL不是一个文件而是在其标准输出输出脚本的程序22到24中的一个。优选地,嵌入是标准的javascript嵌入,而URL不是iavascript文件而是程序22到24中的一个。例如,网页32具有下面的嵌入指令:
<script language=“javascript”src=“/servlets/myServlet”></script>
在此例中,程序“myServlet”会显示下面的javascript指令:
<script>
var firstname=“John”
var lastname=“Woo”
var authoring=true;
</script>
用户第一次请求网页32时,浏览器42通过通信网络1发送相应的请求消息。该请求消息路由到web服务器3。web服务器3通过通信网络1将所请求的网页32下载到浏览器42,其中网页32例如是DHML页面(DHTML=动态超文本标记语言)。如先前示例,网页32包含图形用户界面的静态数据以及至少一个用于包括网页的动态部分的嵌入。该至少一个嵌入指向位于网络服务器2的程序并且适于输出脚本。浏览器42将网页32存储在高速缓存32中。进一步,其执行网页32的嵌入,联系服务器2中的相应的程序22到24,并且从这些包含了将要在网页32中包括的动态数据的程序中获取脚本。例如,浏览器42获取javascript 61,其包含了程序“myServlet”的上述指定的输出。现在,网页的静态部分必须使用动态部分,并且浏览器必须将接收的动态数据包括进网页32。这是通过所谓的“自动数据填充”机制来完成的。这个机制自动地将包括在获取的脚本中的动态数据填充到相应的HMTL表单域中,例如,textInput、checkbox、droplist等。例如,脚本61中的值“firstname”,“lastname”和“authoring”填充在网页32的相应HTML表单域中。
优选地,存在一个命名惯例,其中网页32和网页33的HTML表单域和那些由程序22、23和24输出的javascript变量取相同的名字。泛型代码(generic code)存储在javascript库中,其中javascript库包括在网页32和网页33的所有文件中。该泛型代码用来自动地将所获取的脚本的javascript变量填充到网页32和网页33的合适的域中。在网页32的下载期间,通过使用网页32中的超链接引用,相关联的文件(图像、CSS、javascript等)也被自动下载(从服务器3)并且存储在高速缓存43中。
网页32的第二个请求中,所有静态的东西已经在本地可用并且从高速缓存43中下载。只有动态数据必须通过通信网络1下载。这在下面通过图2的辅助来举例说明。
图2示出了通信网络1、服务器2和服务器3以及客户端计算机4。网页32和它们相关联的文件存储在客户端计算机4的高速缓存43中。当用户或者客户端计算机4的刷新函数或者用户请求访问网页32时,网页32和其相关联的文件被自动地从高速缓存43中下载到浏览器42。只要浏览器对导向服务器2的程序的网页32的嵌入进行处理,浏览器就联系该程序并且获取脚本,例如脚本62,其包含有将要包括进静态GUI的更新的动态数据。
下面,通过图3的辅助来举例说明本发明进一步的细节。
图3示出了具有网页32和网页33的数据库31、浏览器42、高速缓存43以及具有程序22、23和24的容器21。
用户第一次请求网页33时,服务器3将网页33下载到浏览器42。网页33是DHTML页面,具有多个指定静态数据的HTML标签和指向容器21中的程序的嵌入。例如,网页33包含标签72和标签74以及嵌入71和嵌入73,其中标签72和标签74包含这种静态数据,而嵌入71和嵌入73指向容器21中的程序。
进一步,网页33包括具有程序代码的脚本73,由浏览器42执行该脚本时,嵌入71和嵌入73提供的动态数据自动地填充标签72和标签74的HTML域。
进一步,网页33包括用于网页33中的隐藏框的脚本76。脚本76包含用于网页特定的预先装载机制的数据和代码,其中网页特定的预先装载机制在由浏览器42执行时会选择、下载可能需要的文件并将其存储到客户端计算机4的高速缓存43中。
因此,网页33包含指定图形用户界面的静态数据即文本72和文本74的代码;用于包括网页的动态部分的嵌入71和嵌入73;以及代码,即脚本75,用于通过动态数据将动态部分包括进网页的静态部分,其中动态数据由程序22到程序24产生并且通过脚本从网络服务器2传送到客户端计算机4。
当第一次下载网页33到浏览器42时,浏览器42将网页33和由网页33中的超链接引用包括的相关联文件存储到高速缓存43中。进一步,浏览器在后台在隐藏框45之内执行脚本76中指定的预先装载机制。预先装载机制预先装载以后可能需要的文件。将可能的下一个网页放置在一个图形中,其中访问该页面的概率与该图形的每一个分支相关联。游历过程优选那些具有最高概率的分支对图形进行游历。例如,在登录页面之后的下一个页面90%是主页并且10%是错误页面。进一步指定用户首选项的用户特定的配置文件可以用来建立或者修改图形。进一步,游历过程选择地考虑用户输入或者其它种类的外部数据并且其会影响由后台预先装载机制完成的选择。
预先装载在后台在隐藏框45之内完成。在后台下载由游历过程选择的每一个网页,并且因此自动地将其存储在高速缓存43中。例如,下载网页81、82和83并且将其存储到高速缓存43中。在下载期间,还自动地下载通过超链接引用包括在所选择的网页中的相关联文件(图像、CSS和javascript),并将其存储在高速缓存43中。当可能需要的文本文件的所有或者大多数相关部分已经存储到高速缓存中时,很有可能当用户点击进入下一个页面时,所有静态的东西会从高速缓存中下载,即使用户是第一次见该页面。
在可见框46中,当显示网页33时浏览器42执行网页33的嵌入71和嵌入73,联系容器21中的相关联程序并且获取脚本91和脚本92,其中脚本91和脚本92包括必须要被包括进GUI静态部分中的GUI的动态数据。网页33的脚本75提供自动将包括在脚本91和脚本92中的动态数据填充到标签72和标签74的合适HTML表单域中的泛型代码。
优选地,脚本75包含具有额外函数的代码,其读取当前查询串,将文件路径和获取的查询串链接起来,并且动态地用链接的结果构建用于包括网页动态部分的嵌入。优选地,该函数会进一步自动地产生随机化数字,并且将其添加到查询串,使得浏览器42将不会高速缓存动态数据。
例如,如果人们想要描述用于列出用户的GUI,可访问第五个用户并且getUser会是为给定用户提供数据的程序,insertJSFile()函数将为“/servlets/getUser”构建下面的HTML指令:
<script language=“javascript”
src=“/servlets/getUser?id=5 & rand=345101615109701”></script>。
由函数insertJSFile()创建的该HTML指令在由浏览器42执行时告诉getUser程序需要第五个用户的数据,并且包含用来防止高速缓存动态数据的随机数字。
Claims (10)
1.一种在客户端计算机上显示数据的方法,该方法包括以下步骤:
从web服务器发送网页到该客户端计算机,该网页包含网页的静态部分和至少一个用于包括该网页动态部分的嵌入,其中该网页的静态部分包括图形用户界面的静态数据,其中所述嵌入指向位于网络服务器并且适于输出脚本的程序;
将该网页存储在该客户端计算机的高速缓存中;
将该脚本从该网络服务器传送到该客户端计算机,该脚本包含由该程序产生的动态数据;
通过所述动态数据将该动态部分包括到该网页的静态部分中;以及
通过在该客户端计算机上执行的浏览器显示该网页;
其中,该客户端计算机执行函数,该函数读取当前的查询串,将文件路径与该获取的查询串进行链接,以及动态地用该链接的结果构建用于包括该网页动态部分的嵌入。
2.根据权利要求1所述的方法,其中:
该客户端计算机执行以后可能需要的文件的后台预先装载机制,其中该预先装载机制选择、下载可能需要的文件并将其存储到客户端计算机的高速缓存中。
3.根据权利要求2所述的方法,其中:
该方法还包括以下步骤:建立指示可能需要的后续网页的图形,该图形代表访问这些网页的概率;优选具有最高概率的分支对该图形进行游历;并且预先装载与在该游历过程中所选择的网页的相关联文件。
4.根据权利要求2或者3所述的方法,其中
该方法还包括以下步骤:在该网页中包括用于隐藏框的脚本,该脚本适于执行网页特定的预先装载机制;用该脚本下载和高速缓存该网页;以及在该浏览器的该隐藏框内在后台执行该预先装载机制。
5.根据权利要求1所述的方法,其中:
该方法还包括以下步骤:在该网页中包括脚本,该脚本适于执行自动填充过程;并且通过该自动填充过程,使用由该嵌入提供的对应的动态数据填充网页中的域。
6.根据权利要求1所述的方法,其中:
该方法还包括以下步骤:在该网络服务器上包括一个或者多个代表该脚本中动态数据的javascript变量;将该网页的HTML表单域命名为和javascript变量相同的名字;并且自动地在该客户端计算机上由包含在所获取的脚本中的对应javascript变量来填充HTML表单域。
7.根据权利要求1所述的方法,其中:
该客户端计算机执行函数,该函数自动产生随机数字并且将该随机数字添加到该嵌入的查询串中。
8.根据权利要求1所述的方法,其中:
所述网页是HTML页面。
9.一种客户端计算机,包括:用于从web服务器获取网页的通信单元;用于存放网页存储器,该网页包括网页的静态部分以及至少一个用于包括该网页动态部分的嵌入,其中该网页的静态部分包括图形用户界面的静态数据,其中所述嵌入指向位于网络服务器上并且适于输出脚本的程序,该脚本包含由该程序产生的动态数据;以及浏览器,其适于将从该web服务器获取的该网页存储在高速缓存中,通过由该脚本传送的所述动态数据将该动态部分包括到该网页的静态部分中,并且显示该网页,其中该客户端计算机执行函数,该函数读取当前的查询串,将文件路径与该获取的查询串进行链接,以及动态地用该链接的结果构建用于包括该网页动态部分的嵌入。
10.根据权利要求9所述的客户端计算机,其中:
所述网页是HTML页面。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
EP04292833A EP1662405A1 (en) | 2004-11-30 | 2004-11-30 | Method of displaying data on a client computer |
EP04292833.3 | 2004-11-30 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN1783079A CN1783079A (zh) | 2006-06-07 |
CN100550013C true CN100550013C (zh) | 2009-10-14 |
Family
ID=34931564
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CNB2005101166560A Expired - Fee Related CN100550013C (zh) | 2004-11-30 | 2005-10-26 | 客户端计算机显示数据的方法 |
Country Status (3)
Country | Link |
---|---|
US (1) | US20060129635A1 (zh) |
EP (1) | EP1662405A1 (zh) |
CN (1) | CN100550013C (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103377194A (zh) * | 2012-04-16 | 2013-10-30 | 苏州工业园区进一科技有限公司 | 加速网页访问的方法、装置和浏览器 |
CN106936727A (zh) * | 2015-12-30 | 2017-07-07 | 中国移动通信集团云南有限公司 | 一种网页显示方法及装置 |
Families Citing this family (59)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6721780B1 (en) | 1999-11-09 | 2004-04-13 | Fireclick, Inc. | Predictive pre-download of network objects |
US7269784B1 (en) | 2001-01-22 | 2007-09-11 | Kasriel Stephane | Server-originated differential caching |
US7185063B1 (en) | 2001-06-22 | 2007-02-27 | Digital River, Inc. | Content delivery network using differential caching |
US7092997B1 (en) | 2001-08-06 | 2006-08-15 | Digital River, Inc. | Template identification with differential caching |
US7188214B1 (en) * | 2001-08-07 | 2007-03-06 | Digital River, Inc. | Efficient compression using differential caching |
US7296051B1 (en) | 2002-02-19 | 2007-11-13 | Digital River, Inc. | Predictive predownload of templates with delta encoding |
US7487261B1 (en) | 2002-02-22 | 2009-02-03 | Digital River, Inc. | Delta caching service |
CN1996287A (zh) * | 2006-11-02 | 2007-07-11 | 武汉软想科技有限公司 | 一种在网页中嵌入命令码的分布式web系统 |
US9037983B1 (en) | 2006-12-13 | 2015-05-19 | Emc Corporation | User privilege based web page content editing |
US8555159B1 (en) * | 2006-12-13 | 2013-10-08 | Emc Corporation | Dynamic display of web page content for editing and review |
CN101201827B (zh) * | 2006-12-14 | 2013-02-20 | 阿里巴巴集团控股有限公司 | 一种网页显示的方法和系统 |
CN101388902B (zh) * | 2007-09-14 | 2011-12-07 | 英业达股份有限公司 | 通过客户端实现图形化网页浏览之系统及其方法 |
CN101441644B (zh) * | 2007-11-19 | 2010-11-17 | 英福达科技股份有限公司 | 网页批注系统与方法 |
US8266187B2 (en) * | 2008-02-19 | 2012-09-11 | Hewlett-Packard Development Company, L.P. | Integration of static and dynamic data for database entities and the unified presentation thereof |
US8156419B2 (en) * | 2008-07-17 | 2012-04-10 | International Business Machines Corporation | Intelligent preloads of views and asynchronous loading of models using the MVC design pattern |
US20100043011A1 (en) * | 2008-08-18 | 2010-02-18 | International Business Machines Corporation | Method for tracking local storage of web pages |
US9311425B2 (en) * | 2009-03-31 | 2016-04-12 | Qualcomm Incorporated | Rendering a page using a previously stored DOM associated with a different page |
US9171097B2 (en) | 2009-03-31 | 2015-10-27 | Qualcomm Incorporated | Memoizing web-browsing computation with DOM-based isomorphism |
CN101515300B (zh) | 2009-04-02 | 2011-07-20 | 阿里巴巴集团控股有限公司 | 一种Ajax网页内容的抓取方法及系统 |
US8433749B2 (en) | 2009-04-15 | 2013-04-30 | Accenture Global Services Limited | Method and system for client-side scaling of web server farm architectures in a cloud data center |
KR101502756B1 (ko) * | 2009-06-09 | 2015-03-17 | 한국전자통신연구원 | 게임 컨텐츠 판매 시스템 및 그 방법 |
TWI456416B (zh) * | 2009-06-12 | 2014-10-11 | Alibaba Group Holding Ltd | Ajax網頁內容的抓取方法及系統 |
US8972418B2 (en) | 2010-04-07 | 2015-03-03 | Microsoft Technology Licensing, Llc | Dynamic generation of relevant items |
CN101807209A (zh) * | 2010-04-14 | 2010-08-18 | 深圳市同洲电子股份有限公司 | 网页制作的方法和系统,客户端、服务端 |
US8572496B2 (en) * | 2010-04-27 | 2013-10-29 | Go Daddy Operating Company, LLC | Embedding variable fields in individual email messages sent via a web-based graphical user interface |
US8719223B2 (en) | 2010-05-06 | 2014-05-06 | Go Daddy Operating Company, LLC | Cloud storage solution for reading and writing files |
CN101895558B (zh) * | 2010-08-09 | 2013-03-06 | 王铮夫 | 终端屏幕远程更新的方法 |
CN102541953A (zh) * | 2010-12-29 | 2012-07-04 | 北大方正集团有限公司 | 一种树形结构网络数据展现方法及系统 |
CN102081650A (zh) * | 2010-12-29 | 2011-06-01 | 上海网达软件有限公司 | 嵌入式平台用户界面加速显示的方法 |
CN102098330A (zh) * | 2010-12-29 | 2011-06-15 | 东莞宇龙通信科技有限公司 | 基于json数据格式的异步传输方法、装置及系统 |
TWI427964B (zh) * | 2010-12-30 | 2014-02-21 | Aten Int Co Ltd | 遠端管理方法及遠端管理系統 |
US8892680B2 (en) * | 2011-01-25 | 2014-11-18 | Openwave Mobility, Inc. | System and method for caching content elements with dynamic URLs |
CN102880607A (zh) * | 2011-07-15 | 2013-01-16 | 舆情(香港)有限公司 | 网络动态内容抓取方法及网络动态内容爬虫系统 |
US8522147B2 (en) | 2011-09-20 | 2013-08-27 | Go Daddy Operating Company, LLC | Methods for verifying person's identity through person's social circle using person's photograph |
US8538065B2 (en) | 2011-09-20 | 2013-09-17 | Go Daddy Operating Company, LLC | Systems for verifying person's identity through person's social circle using person's photograph |
CN102799760A (zh) * | 2012-06-18 | 2012-11-28 | 青岛禧泰房产数据技术有限公司 | 房价时间-空间域显示系统及其显示方法 |
US9160809B2 (en) | 2012-11-26 | 2015-10-13 | Go Daddy Operating Company, LLC | DNS overriding-based methods of accelerating content delivery |
US9141669B2 (en) | 2013-01-22 | 2015-09-22 | Go Daddy Operating Company, LLC | Configuring an origin server content delivery using a pulled data list |
US9384208B2 (en) | 2013-01-22 | 2016-07-05 | Go Daddy Operating Company, LLC | Configuring a cached website file removal using a pulled data list |
US9438493B2 (en) | 2013-01-31 | 2016-09-06 | Go Daddy Operating Company, LLC | Monitoring network entities via a central monitoring system |
US9747630B2 (en) | 2013-05-02 | 2017-08-29 | Locu, Inc. | System and method for enabling online ordering using unique identifiers |
US20140365436A1 (en) * | 2013-06-05 | 2014-12-11 | Mobilefast Corporation | Automated synchronization of client-side database with server-side database over a communications network |
CN103473127B (zh) * | 2013-09-10 | 2018-05-01 | 北京思特奇信息技术股份有限公司 | 一种通过jsp技术获取跨系统变量的方法及系统 |
US20150074180A1 (en) * | 2013-09-11 | 2015-03-12 | Mainsoft R&D Ltd. | System and method for providing offline access to content available over the web |
CN104899228A (zh) * | 2014-03-07 | 2015-09-09 | 中国移动通信集团河北有限公司 | 一种发布网页资源的方法及装置 |
US9565147B2 (en) | 2014-06-30 | 2017-02-07 | Go Daddy Operating Company, LLC | System and methods for multiple email services having a common domain |
CN104573069A (zh) * | 2015-01-26 | 2015-04-29 | 四川中电启明星信息技术有限公司 | 企业门户前端渲染引擎 |
CN107229633A (zh) * | 2016-03-24 | 2017-10-03 | 北京神州泰岳软件股份有限公司 | 静态页面生成方法、网页访问方法及装置 |
CN106202322A (zh) * | 2016-06-30 | 2016-12-07 | 乐视控股(北京)有限公司 | 一种页面生成方法和装置 |
US9965648B1 (en) * | 2017-04-06 | 2018-05-08 | International Business Machines Corporation | Automatic masking of sensitive data |
CN107491301A (zh) * | 2017-07-27 | 2017-12-19 | 北京奇安信科技有限公司 | 动态界面处理方法及装置 |
US20190065619A1 (en) * | 2017-08-24 | 2019-02-28 | Coursera, Inc. | Scalable server-side rendering |
CN108334562A (zh) * | 2018-01-09 | 2018-07-27 | 阿里巴巴集团控股有限公司 | 一种页面显示方法和装置 |
US10678929B2 (en) * | 2018-03-09 | 2020-06-09 | Citrix Systems, Inc. | Systems and methods for embedding data in remote session displays |
CN110704125B (zh) * | 2019-09-19 | 2024-06-21 | 腾讯科技(深圳)有限公司 | 一种网页加载方法、装置及存储介质和终端设备 |
CN110795195B (zh) * | 2019-10-31 | 2023-09-26 | 百度在线网络技术(北京)有限公司 | 一种网页渲染方法、装置、电子设备及存储介质 |
CN111506387B (zh) * | 2020-03-02 | 2023-09-22 | 百度在线网络技术(北京)有限公司 | 页面预渲染方法、装置、电子设备及存储介质 |
CN112988151A (zh) * | 2021-03-08 | 2021-06-18 | 北京慧友云商科技有限公司 | 一种基于标准Web技术构建原生小程序的引擎 |
CN116545650B (zh) * | 2023-04-03 | 2024-01-30 | 中国华能集团有限公司北京招标分公司 | 一种网络动态防御方法 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP0898235A2 (en) * | 1997-07-31 | 1999-02-24 | AT&T Corp. | Method and apparatus for dynamic data transfer |
US20030009563A1 (en) * | 1997-07-31 | 2003-01-09 | At&T Corp. | Method for client-side inclusion of data elements |
CN1479221A (zh) * | 2003-08-01 | 2004-03-03 | 威盛电子股份有限公司 | 跨语言企业网站网页数据的管理方法、装置及其存储介质 |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6385642B1 (en) * | 1998-11-03 | 2002-05-07 | Youdecide.Com, Inc. | Internet web server cache storage and session management system |
US6948151B2 (en) * | 2001-06-29 | 2005-09-20 | International Business Machines Corporation | System and method for dynamic packaging of component objects |
US7392390B2 (en) * | 2001-12-12 | 2008-06-24 | Valve Corporation | Method and system for binding kerberos-style authenticators to single clients |
US20040205165A1 (en) * | 2003-01-21 | 2004-10-14 | Eplication Networks Ltd. | Method for improving quality of service from an Internet server employing heuristic optimization of downloading |
-
2004
- 2004-11-30 EP EP04292833A patent/EP1662405A1/en not_active Ceased
-
2005
- 2005-10-18 US US11/251,926 patent/US20060129635A1/en not_active Abandoned
- 2005-10-26 CN CNB2005101166560A patent/CN100550013C/zh not_active Expired - Fee Related
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP0898235A2 (en) * | 1997-07-31 | 1999-02-24 | AT&T Corp. | Method and apparatus for dynamic data transfer |
US20030009563A1 (en) * | 1997-07-31 | 2003-01-09 | At&T Corp. | Method for client-side inclusion of data elements |
CN1479221A (zh) * | 2003-08-01 | 2004-03-03 | 威盛电子股份有限公司 | 跨语言企业网站网页数据的管理方法、装置及其存储介质 |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103377194A (zh) * | 2012-04-16 | 2013-10-30 | 苏州工业园区进一科技有限公司 | 加速网页访问的方法、装置和浏览器 |
CN106936727A (zh) * | 2015-12-30 | 2017-07-07 | 中国移动通信集团云南有限公司 | 一种网页显示方法及装置 |
Also Published As
Publication number | Publication date |
---|---|
EP1662405A1 (en) | 2006-05-31 |
US20060129635A1 (en) | 2006-06-15 |
CN1783079A (zh) | 2006-06-07 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN100550013C (zh) | 客户端计算机显示数据的方法 | |
US10911554B2 (en) | Method and system for tracking web link usage | |
US8280947B2 (en) | Method for distributing computing between server and client | |
CN101615179B (zh) | 用于Web应用的跨域交互的方法和系统 | |
CN103782294B (zh) | 远程浏览会话管理 | |
EP1969494B1 (en) | Method and system for providing asynchronous portal pages | |
CN100462964C (zh) | 一种网页数据的更新显示方法 | |
US20110093790A1 (en) | Preemptive caching for web-based systems | |
Ravi et al. | A survey on dynamic Web content generation and delivery techniques | |
US20060195779A1 (en) | Methods, systems and computer program products for maintaining a separation between markup and data at the client | |
CN112114913B (zh) | 应用程序的界面更新方法、装置、计算机设备和存储介质 | |
CN1235315A (zh) | 使用合成请求加速超文本页导航的方法和装置 | |
US20020138555A1 (en) | Client enhanced server-side cache system | |
CN103714172A (zh) | 页面处理方法、装置及系统 | |
CN107229760B (zh) | 存储介质、电子装置、网页内容的显示方法和装置 | |
CN104423991A (zh) | 在移动终端加载网页、提供网页数据的方法及装置 | |
CN103827778A (zh) | 企业工具增强 | |
Rukzio et al. | Automatic form filling on mobile devices | |
KR100918503B1 (ko) | 웹사이트 링크정보를 이용한 웹페이지 정보 전달 방법 및 그 시스템 | |
US9020970B2 (en) | Embeddable web application agent | |
CN113449216A (zh) | 一种文件处理方法、装置及存储介质 | |
EP2237168A1 (en) | System, device and method for providing forms on an computing device | |
CN108737133A (zh) | 用于cdn静态网络修复的方法及装置 | |
WO2001046873A1 (en) | Method and apparatus employing a proxy server for modifying an html document supplied by a web server to a web client | |
KR100859595B1 (ko) | 모바일 매쉬-업 서비스 제공 시스템 및 방법 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20091014 Termination date: 20171026 |
|
CF01 | Termination of patent right due to non-payment of annual fee |