CN102750281B - 一种浏览器的脚本处理方法和*** - Google Patents

一种浏览器的脚本处理方法和*** Download PDF

Info

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
Application number
CN201110097899.XA
Other languages
English (en)
Other versions
CN102750281A (zh
Inventor
张保华
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Shenzhen Yayue Technology Co ltd
Original Assignee
Tencent Technology Shenzhen Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Tencent Technology Shenzhen Co Ltd filed Critical Tencent Technology Shenzhen Co Ltd
Priority to CN201110097899.XA priority Critical patent/CN102750281B/zh
Priority to PCT/CN2012/072452 priority patent/WO2012142892A1/zh
Publication of CN102750281A publication Critical patent/CN102750281A/zh
Priority to US14/051,230 priority patent/US20140068417A1/en
Application granted granted Critical
Publication of CN102750281B publication Critical patent/CN102750281B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/10Text processing
    • G06F40/12Use of codes for handling textual entities
    • G06F40/14Tree-structured documents
    • G06F40/143Markup, e.g. Standard Generalized Markup Language [SGML] or Document Type Definition [DTD]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/95Retrieval from the web
    • G06F16/957Browsing optimisation, e.g. caching or content distillation
    • G06F16/9577Optimising 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代码。
CN201110097899.XA 2011-04-19 2011-04-19 一种浏览器的脚本处理方法和*** Active CN102750281B (zh)

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)

* Cited by examiner, † Cited by third party
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)

* Cited by examiner, † Cited by third party
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)

* Cited by examiner, † Cited by third party
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

Patent Citations (4)

* Cited by examiner, † Cited by third party
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.