CN102750281B - 一种浏览器的脚本处理方法和*** - Google Patents
一种浏览器的脚本处理方法和*** Download PDFInfo
- Publication number
- CN102750281B CN102750281B CN201110097899.XA CN201110097899A CN102750281B CN 102750281 B CN102750281 B CN 102750281B CN 201110097899 A CN201110097899 A CN 201110097899A CN 102750281 B CN102750281 B CN 102750281B
- Authority
- CN
- China
- Prior art keywords
- proxy server
- page
- client
- browser
- server
- 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.)
- Active
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/10—Text processing
- G06F40/12—Use of codes for handling textual entities
- G06F40/14—Tree-structured documents
- G06F40/143—Markup, e.g. Standard Generalized Markup Language [SGML] or Document Type Definition [DTD]
-
- 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/9577—Optimising the visualization of content, e.g. distillation of HTML documents
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Databases & Information Systems (AREA)
- Data Mining & Analysis (AREA)
- Health & Medical Sciences (AREA)
- Artificial Intelligence (AREA)
- Audiology, Speech & Language Pathology (AREA)
- Computational Linguistics (AREA)
- General Health & Medical Sciences (AREA)
- Information Transfer Between Computers (AREA)
Abstract
本发明公开了一种浏览器的脚本处理方法和***,方法包括:客户端将用户请求的统一资源定位符(URL)发送到代理服务器;代理服务器向URL对应的互联网服务器请求页面,并将互联网服务器返回的页面的脚本代码编译成二进制字节码后发送到客户端;客户端执行二进制字节码。通过本发明,有效节省了移动终端浏览器执行脚本代码编译的开销,实现了移动终端浏览器对脚本代码执行操作的支持。
Description
技术领域
本发明涉及互联网的终端浏览器技术,尤其涉及一种浏览器的脚本处理方法和***。
背景技术
目前,在标准的个人计算机(PC,Personal Computer)浏览器上,网页中的JavaScript代码执行时,需要经过以下的步骤:
1、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)执行操作的支持。
附图说明
图1为本发明一种浏览器的脚本处理方法的流程图;
图2为本发明一种浏览器的脚本处理***的结构示意图;
图3为本发明实施例中浏览器的脚本处理示意图。
具体实施方式
下面结合附图和具体实施例对本发明的技术方案进一步详细阐述。
实现移动终端的浏览器对脚本代码(JavaScript)执行操作的支持,本发明所提供的一种浏览器的脚本处理方法,如图1所示,主要包括以下步骤:
步骤101,客户端将用户请求的统一资源定位符(URL,Universal ResourceLocator)发送到代理服务器。
用户在需要访问网站时,会在其所使用的移动终端的浏览器的客户端上点击或输入所需访问网站的地址、即URL,此时,移动终端的浏览器的客户端会记录用户所点击或输入的URL,并将记录的URL发送到代理服务器。
步骤102,代理服务器向URL对应的互联网服务器请求页面,并将互联网服务器返回的页面的脚本代码编译成二进制字节码后发送到客户端。
代理服务器接收到客户端发送的URL后,找到与该URL对应的互联网服务器,并向该互联网服务器发送页面请求;互联网服务器接收到来自代理服务器的页面请求后,会将对应页面的脚本代码返回给代理服务器;代理服务器将互联网服务器返回的页面的脚本代码编译成浏览器客户端的JavaScript虚拟机能够使用的二进制字节码,并将所述二进制字节码发送到客户端。
步骤103,客户端执行所述二进制字节码。
客户端接收到代理服务器返回的二进制字节码后,通过其JavaScript虚拟机执行相应的二进制字节码。
需要说明的是,互联网服务器在接收到代理服务器的页面请求后,还需要将页面的超文本标记语言(HTML,Hyper Text Mark-up Language)文件发送到代理服务器;进而,代理服务器将页面的HTML文件转换为二进制的文档对象模型(DOM,Document Object Model)树结构,并将所述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,WorldWide Web)页面链接,此时,该移动终端的浏览器客户端记录下该WWW页面链接的URL,并将所记录的URL发送到后台的代理服务器;代理服务器接收到客户端发来的URL后,找到与该URL对应的WWW服务器,并向该WWW服务器发送页面请求;WWW服务器接收到来自代理服务器的页面请求后,会将对应页面的HTML文件和脚本代码返回给代理服务器;代理服务器将页面的HTML文件转换为二进制的DOM树结构,并将页面的脚本代码编译成浏览器客户端的JavaScript虚拟机能够使用的二进制字节码,然后将所述二进制的DOM树结构和字节码下发给客户端;客户端接收到代理服务器返回的二进制的DOM树结构和字节码后,在页面上渲染所述DOM树结构的内容,并通过其JavaScript虚拟机执行相应的二进制字节码。
例如,WWW服务器发送给代理服务器以下的HTML文件:
编码成二进制的DOM树结构,如下表1所示:
表1
其中,数据“54 51 42 4C 00 01 21 08 00 00 87 66 83 0D 0E 03”表示文件头,上边虚线框内的数据为“hello,world!”的二进制编码数据,下边虚线框内的数据为img标签中的图片的二进制编码数据。
以img标签中的图片为例,具体含义说明如下表2所示:
表2
客户端收到表1所示的二进制数据后,进行渲染时,就根据上表2提供的坐标数据和图片大小数据,将图片绘制在客户端的屏幕的合适位置,完成渲染过程,而不需要自己计算图片应该放置的坐标位置,这有效的减轻了客户端的计算负担。
综上所述,本发明将对浏览器脚本代码的编译和执行操作分开处理,即在代理服务器上将浏览器脚本代码预先编译成二进制字节码后再下发给移动终端的浏览器客户端,移动终端的浏览器客户端直接执行代理服务器编译后的二进制字节码即可。通过这样的处理,能够有效节省移动终端浏览器执行脚本代码编译的开销,实现移动终端浏览器对脚本代码(JavaScript)执行操作的支持。还需说明的是,本发明浏览器的脚本处理方法和***不仅适用于对JavaScript代码的处理,也适用于对VBScript代码的处理。
以上所述,仅为本发明的较佳实施例而已,并非用于限定本发明的保护范围。
Claims (4)
1.一种浏览器的脚本处理方法,其特征在于,该方法包括:
客户端将用户请求的统一资源定位符URL发送到代理服务器;
代理服务器向所述URL对应的互联网服务器请求页面,并将所述互联网服务器返回的页面的脚本代码编译成二进制字节码,将所述互联网服务器返回的页面的超文本标记语言HTML文件转换为二进制的文档对象模型DOM树结构,并将所述二进制字节码和二进制的DOM树结构发送到所述客户端;
所述客户端执行所述二进制字节码,并根据所述二进制的DOM树结构在页面上渲染所述DOM树结构的内容。
2.根据权利要求1所述浏览器的脚本处理方法,其特征在于,所述脚本代码为JavaScript代码。
3.一种浏览器的脚本处理***,其特征在于,该***包括:客户端、代理服务器和互联网服务器,其中,
所述客户端,用于将用户请求的URL发送到所述代理服务器,还用于执行所述代理服务器返回的二进制字节码;
所述代理服务器,用于向所述URL对应的互联网服务器请求页面,并将所述互联网服务器返回的页面的脚本代码编译成二进制字节码后发送到所述客户端;
所述互联网服务器,用于根据所述代理服务器的请求,向所述代理服务器提供页面的脚本代码;
所述互联网服务器进一步用于,在接收到代理服务器的页面请求后,将页面的HTML文件发送到所述代理服务器;
所述代理服务器进一步用于,将所述页面的HTML文件转换为二进制的DOM树结构,并将所述DOM树结构发送到所述客户端;
所述客户端进一步用于,在接收到所述代理服务器的DOM树结构后,在页面上渲染所述DOM树结构的内容。
4.根据权利要求3所述浏览器的脚本处理***,其特征在于,所述脚本代码为JavaScript代码。
Priority Applications (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201110097899.XA CN102750281B (zh) | 2011-04-19 | 2011-04-19 | 一种浏览器的脚本处理方法和*** |
PCT/CN2012/072452 WO2012142892A1 (zh) | 2011-04-19 | 2012-03-16 | 一种浏览器的脚本处理方法和*** |
US14/051,230 US20140068417A1 (en) | 2011-04-19 | 2013-10-10 | Script Processing Method and System for Browsers |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201110097899.XA CN102750281B (zh) | 2011-04-19 | 2011-04-19 | 一种浏览器的脚本处理方法和*** |
Publications (2)
Publication Number | Publication Date |
---|---|
CN102750281A CN102750281A (zh) | 2012-10-24 |
CN102750281B true CN102750281B (zh) | 2015-09-16 |
Family
ID=47030473
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201110097899.XA Active CN102750281B (zh) | 2011-04-19 | 2011-04-19 | 一种浏览器的脚本处理方法和*** |
Country Status (3)
Country | Link |
---|---|
US (1) | US20140068417A1 (zh) |
CN (1) | CN102750281B (zh) |
WO (1) | WO2012142892A1 (zh) |
Families Citing this family (16)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9137210B1 (en) * | 2012-02-21 | 2015-09-15 | Amazon Technologies, Inc. | Remote browsing session management |
CN102955854B (zh) * | 2012-11-06 | 2015-11-25 | 搜游网络科技(北京)有限公司 | 一种基于html5协议的网页展现方法及装置 |
CN103226475B (zh) * | 2013-05-16 | 2016-03-16 | 百度在线网络技术(北京)有限公司 | 转码时实现控件替换的方法及装置 |
CN103513987A (zh) * | 2013-09-18 | 2014-01-15 | 小米科技有限责任公司 | 一种浏览器网页的渲染处理方法、装置及终端设备 |
CN103544276B (zh) * | 2013-10-22 | 2017-05-10 | 北京京东尚科信息技术有限公司 | 一种采用虚拟机显示脚本文件的方法及装置 |
CN104182700A (zh) * | 2013-12-12 | 2014-12-03 | 南宁市磁汇科技有限公司 | 保护web页面可执行脚本的方法 |
CN105577710B (zh) * | 2014-10-09 | 2019-06-11 | 阿里巴巴集团控股有限公司 | 提供服务和获取服务的方法、装置和*** |
CN106775900B (zh) * | 2017-01-20 | 2020-10-09 | 陈刚 | 应用浏览器的调用方法和*** |
CN106951270B (zh) * | 2017-04-06 | 2023-04-07 | 腾讯科技(深圳)有限公司 | 一种代码处理方法、***及服务器 |
CN108108440A (zh) * | 2017-12-21 | 2018-06-01 | 北京慧数科技有限公司 | 代理服务器及互联网数据的采集方法 |
CN108334379A (zh) * | 2018-01-05 | 2018-07-27 | 北京明略软件***有限公司 | 一种页面扩展功能的实现方法及实现装置 |
CN108459852A (zh) * | 2018-01-30 | 2018-08-28 | 美通云动(北京)科技有限公司 | 脚本处理方法及装置、存储介质、电子设备 |
CN110647330B (zh) * | 2019-09-10 | 2023-04-07 | 北京网聘咨询有限公司 | 针对Web的即时编译方法及工具 |
CN111176625B (zh) * | 2019-12-31 | 2023-07-28 | 杭州趣链科技有限公司 | 一种在浏览器端高效编译Solidity智能合约的方法 |
CN112954075B (zh) * | 2021-03-29 | 2023-04-07 | 中信银行股份有限公司 | 一种业务功能实现方法、***、对应装置及存储介质 |
CN113656720B (zh) * | 2021-08-25 | 2024-04-16 | 北京达佳互联信息技术有限公司 | 页面展示方法、装置、电子设备及存储介质 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1696896A (zh) * | 2004-05-10 | 2005-11-16 | 华为技术有限公司 | 统一用户界面的方法及*** |
CN101383848A (zh) * | 2007-09-04 | 2009-03-11 | Lg电信株式会社 | 用于移动网络服务的***和方法 |
CN101448005A (zh) * | 2008-12-24 | 2009-06-03 | 深圳市深信服电子科技有限公司 | 一种在网关进行数据安全检测方法、***及设备 |
CN101860533A (zh) * | 2010-05-26 | 2010-10-13 | 卓望数码技术(深圳)有限公司 | 一种基于c/s架构浏览器的数据传输方法及服务器 |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20090063530A1 (en) * | 2007-09-04 | 2009-03-05 | Lg Telecom Ltd. | System and method for mobile web service |
US20100050089A1 (en) * | 2008-08-20 | 2010-02-25 | Company 100, Inc. | Web browser system of mobile communication terminal, using proxy server |
-
2011
- 2011-04-19 CN CN201110097899.XA patent/CN102750281B/zh active Active
-
2012
- 2012-03-16 WO PCT/CN2012/072452 patent/WO2012142892A1/zh active Application Filing
-
2013
- 2013-10-10 US US14/051,230 patent/US20140068417A1/en not_active Abandoned
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1696896A (zh) * | 2004-05-10 | 2005-11-16 | 华为技术有限公司 | 统一用户界面的方法及*** |
CN101383848A (zh) * | 2007-09-04 | 2009-03-11 | Lg电信株式会社 | 用于移动网络服务的***和方法 |
CN101448005A (zh) * | 2008-12-24 | 2009-06-03 | 深圳市深信服电子科技有限公司 | 一种在网关进行数据安全检测方法、***及设备 |
CN101860533A (zh) * | 2010-05-26 | 2010-10-13 | 卓望数码技术(深圳)有限公司 | 一种基于c/s架构浏览器的数据传输方法及服务器 |
Also Published As
Publication number | Publication date |
---|---|
US20140068417A1 (en) | 2014-03-06 |
CN102750281A (zh) | 2012-10-24 |
WO2012142892A1 (zh) | 2012-10-26 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN102750281B (zh) | 一种浏览器的脚本处理方法和*** | |
US7853593B2 (en) | Content markup transformation | |
US20150370912A1 (en) | Method and system for displaying customized webpage on double webview | |
CN102799372B (zh) | 一种图片信息的上传方法及上传装置 | |
RU2008109251A (ru) | Начальное воспроизведение контента серверной стороны для web-страниц клинического сценария | |
US20140201617A1 (en) | Method for Browsing Web Page on Mobile Terminal | |
CN102486799B (zh) | 一种环球信息网www页面处理方法和装置 | |
TW200517886A (en) | A method and system for improving presentation of html pages in web devices | |
WO2009085227A1 (en) | Embedding metadata with displayable content and applications thereof | |
CN103412890A (zh) | 一种网页加载方法和装置 | |
WO2006085314A3 (en) | Method and system for improving user experience while browsing | |
US11677809B2 (en) | Methods for transforming a server side template into a client side template and devices thereof | |
CN101853293A (zh) | 一种自适应分页的方法及装置 | |
CN104461513B (zh) | 一种生成表单界面的方法及装置 | |
US20170032494A1 (en) | Methods for displaying a webpage fragment on a desktop and systems for taking a snapshot of webpage fragment for displaying on a desktop | |
CN104572843A (zh) | 一种页面的加载方法及装置 | |
CN102646135A (zh) | 一种网页收藏方法、装置及*** | |
TWI539302B (zh) | 用於網路服務的延後資源當地語系化連結 | |
CN112685671A (zh) | 页面显示方法、装置、设备及存储介质 | |
WO2016050124A1 (zh) | 网页转码方法、装置以及服务器 | |
CN102880679B (zh) | 一种网页信息存储方法和装置 | |
JP2016540333A (ja) | 端末標記方法、端末標記装置、プログラム及び記録媒体 | |
CN102497478A (zh) | 一种手机用户快速访问互联网的方法 | |
WO2015035899A1 (en) | Search methods and terminals | |
CN110633443B (zh) | 一种页内数据通信的方法、装置、设备和介质 |
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 | ||
TR01 | Transfer of patent right | ||
TR01 | Transfer of patent right |
Effective date of registration: 20221117 Address after: 1402, Floor 14, Block A, Haina Baichuan Headquarters Building, No. 6, Baoxing Road, Haibin Community, Xin'an Street, Bao'an District, Shenzhen, Guangdong 518133 Patentee after: Shenzhen Yayue Technology Co.,Ltd. Address before: 2, 518044, East 403 room, SEG science and Technology Park, Zhenxing Road, Shenzhen, Guangdong, Futian District Patentee before: TENCENT TECHNOLOGY (SHENZHEN) Co.,Ltd. |