专利名称:一种浏览器的脚本处理方法和系统的制作方法
技术领域:
本发明涉及互联网的终端浏览器技术,尤其涉及一种浏览器的脚本处理方法和系统。
背景技术:
目前,在标准的个人计算机(PC, Personal Computer)浏览器上,网页中的JavaScript代码执行时,需要经过以下的步骤I、PC上的浏览器对JavaScript源代码进行编译,将JavaScript源代码转换为JavaScript虚拟机使用的二进制字节码; 2、浏览器上的JavaScript虚拟机执行相应的二进制字节码。其中,JavaScript是目前浏览器中的常用脚本语言。由于PC浏览器上的JavaScript代码执行操作对中央处理器(CPU, CentralProcessing Unit)的处理能力、内存空间大小的要求较高,而现有的移动终端(如手机)无论是在CPU的处理能力,还是在内存空间大小上都严重受限,因此大部分移动终端都无法达到上述PC浏览器上的JavaScript代码执行操作的要求,从而,将上述PC浏览器上的JavaScript代码执行操作应用于移动终端中非常困难。然而,现有技术还无法提供解决上述技术问题的方案,从而给实际应用带来了不便。
发明内容
有鉴于此,本发明的主要目的在于提供一种浏览器的脚本处理方法和系统,以实现移动终端的浏览器对脚本代码(JavaScript)执行操作的支持。为达到上述目的,本发明的技术方案是这样实现的本发明提供了一种浏览器的脚本处理方法,该方法包括客户端将用户请求的统一资源定位符(URL)发送到代理服务器;代理服务器向所述URL对应的互联网服务器请求页面,并将所述互联网服务器返回的页面的脚本代码编译成二进制字节码后发送到所述客户端;所述客户端执行所述二进制字节码。该方法进一步包括所述互联网服务器在接收到代理服务器的页面请求后,将页面的超文本标记语言(HTML)文件发送到所述代理服务器。该方法进一步包括所述代理服务器将所述页面的超文本标记语言(HTML)文件转换为二进制的文档对象模型(DOM)树结构,并将所述DOM树结构发送到所述客户端。在所述代理服务器将DOM树结构发送到客户端后,该方法进一步包括所述客户端在页面上渲染所述DOM树结构的内容。所述脚本代码为JavaScript代码。
本发明还提供了一种浏览器的脚本处理系统,该系统包括客户端、代理服务器和互联网服务器,其中,所述客户端,用于将用户请求的URL发送到所述代理服务器,还用于执行所述代理服务器返回的二进制字节码;所述代理服务器,用于向所述URL对应的互联网服务器请求页面,并将所述互联网服务器返回的页面的脚本代码编译成二进制字节码后发送到所述客户端;所述互联网服务器,用于根据所述代理服务器的请求,向所述代理服务器提供页面的脚本代码。所述互联网服务器进一步用于,在接收到代理服务器的页面请求后,将页面的HTML文件发送到所述代理服务器。所述代理服务器进一步用于,将所述页面的HTML文件转换为二进制的DOM树结 构,并将所述DOM树结构发送到所述客户端。所述客户端进一步用于,在接收到所述代理服务器的DOM树结构后,在页面上渲染所述DOM树结构的内容。所述脚本代码为JavaScript代码。本发明所提供的一种浏览器的脚本处理方法和系统,将对浏览器脚本代码的编译和执行操作分开处理,即在代理服务器上将浏览器脚本代码预先编译成二进制字节码后再下发给移动终端的浏览器客户端,移动终端的浏览器客户端直接执行代理服务器编译后的二进制字节码即可。通过本发明,有效节省了移动终端浏览器执行脚本代码编译的开销,实现了移动终端浏览器对脚本代码(JavaScript)执行操作的支持。
图I为本发明一种浏览器的脚本处理方法的流程图;图2为本发明一种浏览器的脚本处理系统的结构示意图;图3为本发明实施例中浏览器的脚本处理示意图。
具体实施例方式下面结合附图和具体实施例对本发明的技术方案进一步详细阐述。实现移动终端的浏览器对脚本代码(JavaScript)执行操作的支持,本发明所提供的一种浏览器的脚本处理方法,如图I所示,主要包括以下步骤步骤101,客户端将用户请求的统一资源定位符(URL, Universal ResourceLocator)发送到代理服务器。用户在需要访问网站时,会在其所使用的移动终端的浏览器的客户端上点击或输入所需访问网站的地址、即URL,此时,移动终端的浏览器的客户端会记录用户所点击或输入的URL,并将记录的URL发送到代理服务器。步骤102,代理服务器向URL对应的互联网服务器请求页面,并将互联网服务器返回的页面的脚本代码编译成二进制字节码后发送到客户端。代理服务器接收到客户端发送的URL后,找到与该URL对应的互联网服务器,并向该互联网服务器发送页面请求;互联网服务器接收到来自代理服务器的页面请求后,会将对应页面的脚本代码返回给代理服务器;代理服务器将互联网服务器返回的页面的脚本代码编译成浏览器客户端的JavaScript虚拟机能够使用的二进制字节码,并将所述二进制字节码发送到客户端。步骤103,客户端执行所述二进制字节码。客户端接收到代理服务器返回的二进制字节码后,通过其JavaScript虚拟机执行相应的二进制字节码。需要说明的是,互联网服务器在接收到代理服务器的页面请求后,还需要将页面的超文本标记语言(HTML, Hyper Text Mark-up Language)文件发送到代理服务器;进而,代理服务器将页面的HTML文件转换为二进制的文档对象模型(DOM, Document ObjectModel)树结构,并将所述DOM树结构发送到客户端;客户端在页面上渲染所述DOM树结构的内容。对应上述浏览器的脚本处理方法,本发明还提供了一种浏览器的脚本处理系统,·如图2所示,包括客户端10、代理服务器20和互联网服务器30。其中,客户端10,用于将用户请求的URL发送到代理服务器20,还用于执行代理服务器20返回的二进制字节码。代理服务器20,用于向URL对应的互联网服务器30请求页面,并将互联网服务器30返回的页面的脚本代码编译成二进制字节码后发送到客户端10。互联网服务器30,用于根据代理服务器20的请求,向代理服务器20提供页面的脚本代码。较佳的,互联网服务器30还可用于,在接收到代理服务器20的页面请求后,将页面的HTML文件发送到代理服务器20 ;相应的,代理服务器20进一步用于,将该页面的HTML文件转换为二进制的DOM树结构,并将DOM树结构发送到客户端10 ;客户端10进一步用于,在接收到代理服务器20的DOM树结构后,在页面上渲染该DOM树结构的内容。下面再结合图3所示的实施例对本发明的浏览器的脚本处理方法和系统进一步详细说明。如图3所示,移动终端的用户通过浏览器点击了一个万维网(WWW,World WideWeb)页面链接,此时,该移动终端的浏览器客户端记录下该WWW页面链接的URL,并将所记录的URL发送到后台的代理服务器;代理服务器接收到客户端发来的URL后,找到与该URL对应的WWW服务器,并向该WWW服务器发送页面请求服务器接收到来自代理服务器的页面请求后,会将对应页面的HTML文件和脚本代码返回给代理服务器;代理服务器将页面的HTML文件转换为二进制的DOM树结构,并将页面的脚本代码编译成浏览器客户端的JavaScript虚拟机能够使用的二进制字节码,然后将所述二进制的DOM树结构和字节码下发给客户端;客户端接收到代理服务器返回的二进制的DOM树结构和字节码后,在页面上渲染所述DOM树结构的内容,并通过其JavaScript虚拟机执行相应的二进制字节码。例如,Wffff服务器发送给代理服务器以下的HTML文件<html>
<body> hello, world!
</br>
<img src="./4.jpg" width=" 130" height=" 130">
</body>
</htmI>编码成二进制的DOM树结构,如下表I所示 00000000 54 51 42 4C 00 01 21 08 00 00 87 66 83 OD OE 03
00000010 m 19 08 08 4C 13 07 FF 00 00 00 OC OE 9B OC 681I—— 二二—二二——— ^ 00000020 165 6C 6C 6F 2C 77 6F 72 6C 64 21]^4 OF 08 IC 811
00000030 ,02 81 _02 94_07_ 2_E_2F 34_2E 6A_70 67_____________|表I其中,数据“5451 42 4C 00 01 21 08 00 00 87 66 83 OD OE 03”表示文件头,上边虚线框内的数据为“hello,world ! ”的二进制编码数据,下边虚线框内的数据为img标签中的图片的二进制编码数据。以img标签中的图片为例,具体含义说明如下表2所示<
权利要求
1.一种浏览器的脚本处理方法,其特征在于,该方法包括 客户端将用户请求的统一资源定位符(URL)发送到代理服务器; 代理服务器向所述URL对应的互联网服务器请求页面,并将所述互联网服务器返回的页面的脚本代码编译成二进制字节码后发送到所述客户端; 所述客户端执行所述二进制字节码。
2.根据权利要求I所述浏览器的脚本处理方法,其特征在于,该方法进一步包括 所述互联网服务器在接收到代理服务器的页面请求后,将页面的超文本标记语言(HTML)文件发送到所述代理服务器。
3.根据权利要求2所述浏览器的脚本处理方法,其特征在于,该方法进一步包括 所述代理服务器将所述页面的超文本标记语言(HTML)文件转换为二进制的文档对象模型(DOM)树结构,并将所述DOM树结构发送到所述客户端。
4.根据权利要求3所述浏览器的脚本处理方法,其特征在于,在所述代理服务器将DOM树结构发送到客户端后,该方法进一步包括 所述客户端在页面上渲染所述DOM树结构的内容。
5.根据权利要求I至4任一项所述浏览器的脚本处理方法,其特征在于,所述脚本代码为 JavaScript 代码。
6.一种浏览器的脚本处理系统,其特征在于,该系统包括客户端、代理服务器和互联网服务器,其中, 所述客户端,用于将用户请求的URL发送到所述代理服务器,还用于执行所述代理服务器返回的二进制字节码; 所述代理服务器,用于向所述URL对应的互联网服务器请求页面,并将所述互联网服务器返回的页面的脚本代码编译成二进制字节码后发送到所述客户端; 所述互联网服务器,用于根据所述代理服务器的请求,向所述代理服务器提供页面的脚本代码。
7.根据权利要求6所述浏览器的脚本处理系统,其特征在于,所述互联网服务器进一步用于,在接收到代理服务器的页面请求后,将页面的HTML文件发送到所述代理服务器。
8.根据权利要求7所述浏览器的脚本处理系统,其特征在于,所述代理服务器进一步用于,将所述页面的HTML文件转换为二进制的DOM树结构,并将所述DOM树结构发送到所述客户端。
9.根据权利要求8所述浏览器的脚本处理系统,其特征在于,所述客户端进一步用于,在接收到所述代理服务器的DOM树结构后,在页面上渲染所述DOM树结构的内容。
10.根据权利要求6至9任一项所述浏览器的脚本处理系统,其特征在于,所述脚本代码为JavaScript代码。
全文摘要
本发明公开了一种浏览器的脚本处理方法和系统,方法包括客户端将用户请求的统一资源定位符(URL)发送到代理服务器;代理服务器向URL对应的互联网服务器请求页面,并将互联网服务器返回的页面的脚本代码编译成二进制字节码后发送到客户端;客户端执行二进制字节码。通过本发明,有效节省了移动终端浏览器执行脚本代码编译的开销,实现了移动终端浏览器对脚本代码执行操作的支持。
文档编号H04L29/06GK102750281SQ201110097899
公开日2012年10月24日 申请日期2011年4月19日 优先权日2011年4月19日
发明者张保华 申请人:腾讯科技(深圳)有限公司