CN113032087B - 一种基于Chromium内核的数据交互方法及装置 - Google Patents

一种基于Chromium内核的数据交互方法及装置 Download PDF

Info

Publication number
CN113032087B
CN113032087B CN201911358744.XA CN201911358744A CN113032087B CN 113032087 B CN113032087 B CN 113032087B CN 201911358744 A CN201911358744 A CN 201911358744A CN 113032087 B CN113032087 B CN 113032087B
Authority
CN
China
Prior art keywords
data
logic
activex
peripheral terminal
kernel
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
CN201911358744.XA
Other languages
English (en)
Other versions
CN113032087A (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.)
Asiainfo Technology Nanjing Co ltd
Original Assignee
Asiainfo Technology Nanjing 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 Asiainfo Technology Nanjing Co ltd filed Critical Asiainfo Technology Nanjing Co ltd
Priority to CN201911358744.XA priority Critical patent/CN113032087B/zh
Publication of CN113032087A publication Critical patent/CN113032087A/zh
Application granted granted Critical
Publication of CN113032087B publication Critical patent/CN113032087B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45504Abstract machines for programme code execution, e.g. Java virtual machine [JVM], interpreters, emulators
    • G06F9/45529Embedded in an application, e.g. JavaScript in a Web browser
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Stored Programmes (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

本申请提供了一种基于Chromium内核的数据交互方法及装置,该方法包括:在加载到包含ActiveX初始化逻辑的页面时,调用ActiveX初始化逻辑,运行ActiveX环境;在执行到数据交互语句时,调用Chromium内核的V8引擎中的数据交互逻辑,获取业务系统与外围终端设备之间的交互数据;调用Chromium内核的JS胶合引擎中的数据转换逻辑,将业务系统与外围终端设备之间的交互数据,转换为符合对方支持的数据类型的数据,并将转换后的数据传递给对方。在本申请中,通过以上方式可以保证基于Chromium内核的业务系统与采用ActiveX控件的外围终端设备能正常交互。

Description

一种基于Chromium内核的数据交互方法及装置
技术领域
本申请涉及通信技术领域,特别涉及一种基于Chromium内核的数据交互方法及装置。
背景技术
目前,一些企业应用业务系统一般采用Chromium内核的浏览器,并且,这些企业应用业务系统会存在与应用ActiveX控件的外围终端设备交互的需求,但是因Chromium内核不支持ActiveX控件,导致业务系统与外围终端设备不能正常交互。
因此,如何保证业务系统与外围终端设备能正常交互,成为问题。
发明内容
为解决上述技术问题,本申请实施例提供一种基于Chromium内核的数据交互方法及装置,以达到证基于Chromium内核的业务系统与采用ActiveX控件的外围终端设备能正常交互的目的,技术方案如下:
一种基于Chromium内核的数据交互方法,应用于Chromium内核,该方法包括:
在加载到包含ActiveX初始化逻辑的页面时,调用所述ActiveX初始化逻辑,运行ActiveX环境;
在执行到所述包含ActiveX初始化逻辑的页面中业务系统与采用ActiveX控件的外围终端设备的数据交互语句时,调用所述Chromium内核的V8引擎中的数据交互逻辑,获取所述业务系统与所述外围终端设备之间的交互数据;
调用所述Chromium内核的JS胶合引擎中的数据转换逻辑,将所述业务系统与所述外围终端设备之间的交互数据,转换为符合对方支持的数据类型的数据,并将转换后的数据传递给对方。
优选的,在所述业务系统与采用ActiveX控件的外围终端设备的数据交互语句为调度所述外围设备的语句的情况下,所述数据交互逻辑为COM方法调用逻辑,所述获取所述业务系统与所述外围终端设备之间的交互数据,包括:
通过调度所述外围终端设备,读取所述外围终端设备的COM类型数据;
所述调用所述Chromium内核的JS胶合引擎中的数据转换逻辑,将所述业务系统与所述外围终端设备之间的交互数据,转换为符合对方支持的数据类型的数据,并将转换后的数据传递给对方,包括:
调用所述Chromium内核的JS胶合引擎中的数据转换逻辑,将所述外围终端设备的COM类型数据转换为V8类型数据,并将转换得到的V8类型数据传递给所述业务系统。
优选的,在所述业务系统与采用ActiveX控件的外围终端设备的数据交互语句为向所述外围终端设备发送数据的语句的情况下,所述数据交互逻辑为COM方法调用逻辑,所述获取所述业务系统与所述外围终端设备之间的交互数据,包括:
获取所述业务系统的待发送的V8类型数据;
所述调用所述Chromium内核的JS胶合引擎中的数据转换逻辑,将所述业务系统与所述外围终端设备之间的交互数据,转换为符合对方支持的数据类型的数据,并将转换后的数据传递给对方,包括:
调用所述Chromium内核的JS胶合引擎中的数据转换逻辑,将所述业务系统的待发送的V8类型数据转换为COM类型数据,并将转换得到的COM类型数据传递给所述外围终端设备。
优选的,在所述业务系统与采用ActiveX控件的外围终端设备的数据交互语句为ActiveX事件处理语句的情况下,所述数据交互逻辑为COM事件处理逻辑,所述获取所述业务系统与所述外围终端设备之间的交互数据,包括:
接收所述外围终端设备返回的COM类型数据;
所述调用所述Chromium内核的JS胶合引擎中的数据转换逻辑,将所述业务系统与所述外围终端设备之间的交互数据,转换为符合对方支持的数据类型的数据,并将转换后的数据传递给对方,包括:
调用所述Chromium内核的JS胶合引擎中的数据转换逻辑,将所述外围终端设备返回的COM类型数据转换为V8类型数据,并将转换得到的V8类型数据传递给所述业务系统。
优选的,所述方法还包括:
在加载到不包含ActiveX初始化逻辑的页面时,按照所述Chromium内核的原始处理逻辑,执行浏览器功能。
一种基于Chromium内核的数据交互装置,应用于Chromium内核,该装置包括:
环境运行模块,用于在加载到包含ActiveX初始化逻辑的页面时,调用所述ActiveX初始化逻辑,运行ActiveX环境;
获取模块,用于在执行到所述包含ActiveX初始化逻辑的页面中业务系统与采用ActiveX控件的外围终端设备的数据交互语句时,调用所述Chromium内核的V8引擎中的数据交互逻辑,获取所述业务系统与所述外围终端设备之间的交互数据;
转换传递模块,用于调用所述Chromium内核的JS胶合引擎中的数据转换逻辑,将所述业务系统与所述外围终端设备之间的交互数据,转换为符合对方支持的数据类型的数据,并将转换后的数据传递给对方。
优选的,在所述业务系统与采用ActiveX控件的外围终端设备的数据交互语句为调度所述外围设备的语句的情况下,所述数据交互逻辑为COM方法调用逻辑,所述获取模块,具体用于:
通过调度所述外围终端设备,读取所述外围终端设备的COM类型数据;
所述转换传递模块,具体用于:
调用所述Chromium内核的JS胶合引擎中的数据转换逻辑,将所述外围终端设备的COM类型数据转换为V8类型数据,并将转换得到的V8类型数据传递给所述业务系统。
优选的,在所述业务系统与采用ActiveX控件的外围终端设备的数据交互语句为向所述外围终端设备发送数据的语句的情况下,所述数据交互逻辑为COM方法调用逻辑,所述获取模块,具体用于:
获取所述业务系统的待发送的V8类型数据;
所述转换传递模块,具体用于:
调用所述Chromium内核的JS胶合引擎中的数据转换逻辑,将所述业务系统的待发送的V8类型数据转换为COM类型数据,并将转换得到的COM类型数据传递给所述外围终端设备。
优选的,在所述业务系统与采用ActiveX控件的外围终端设备的数据交互语句为ActiveX事件处理语句的情况下,所述数据交互逻辑为COM事件处理逻辑,所述获取模块,具体用于:
接收所述外围终端设备返回的COM类型数据;
所述转换传递模块,具体用于:
调用所述Chromium内核的JS胶合引擎中的数据转换逻辑,将所述外围终端设备返回的COM类型数据转换为V8类型数据,并将转换得到的V8类型数据传递给所述业务系统。
优选的,所述装置还包括:
执行模块,用于在加载到不包含ActiveX初始化逻辑的页面时,按照所述Chromium内核的原始处理逻辑,执行浏览器功能。
与现有技术相比,本申请的有益效果为:
在本申请中,Chromium内核在加载到包含ActiveX初始化逻辑的页面时,调用所述ActiveX初始化逻辑,运行ActiveX环境,使Chromium内核具备支持ActiveX的基础,在执行到所述包含ActiveX初始化逻辑的页面中业务系统与采用ActiveX控件的外围终端设备的数据交互语句时,调用所述Chromium内核的V8引擎中的数据交互逻辑,获取所述业务系统与所述外围终端设备之间的交互数据,实现交互数据的获取,并调用数据转换逻辑,满足业务系统与外围终端设备能够识别对方的数据的要求,通过以上方式可以保证基于Chromium内核的业务系统与采用ActiveX控件的外围终端设备能正常交互。
附图说明
为了更清楚地说明本申请实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1是为本申请提供的一种基于Chromium内核的数据交互方法实施例1的流程图;
图2是为本申请提供的一种基于Chromium内核的数据交互方法实施例2的流程图;
图3是为本申请提供的一种基于Chromium内核的数据交互方法实施例3的流程图;
图4是为本申请提供的一种基于Chromium内核的数据交互方法实施例4的流程图;
图5是为本申请提供的一种基于Chromium内核的数据交互方法实施例5的流程图;
图6是为本申请提供的一种基于Chromium内核的数据交互装置的逻辑结构示意图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
本申请实施例公开了一种基于Chromium内核的数据交互方法,应用于Chromium内核,该方法包括:在加载到包含object标签的页面时,调用所述object标签中的ActiveX初始化逻辑,运行ActiveX环境;在执行到所述包含ActiveX初始化逻辑的页面中业务系统与采用ActiveX控件的外围终端设备的数据交互语句时,调用所述Chromium内核的V8引擎中的数据交互逻辑,获取所述业务系统与所述外围终端设备之间的交互数据;调用所述Chromium内核的JS胶合引擎中的数据转换逻辑,将所述业务系统与所述外围终端设备之间的交互数据,转换为符合对方支持的数据类型的数据,并将转换后的数据传递给对方。本申请中,可以保证基于Chromium内核的业务系统与应用ActiveX的外围终端设备能正常交互。
在对本申请实施例公开的基于Chromium内核的数据交互方法介绍之前,对本申请实施例公开的Chromium内核进行介绍,具体如下:
在本申请中,对Chromium内核进行了修改,使其在保持原有功能的前提下,可以兼容ActiveX。具体修改的方式可以包括:
在Chromium内核的页面渲染引擎中增加Object标签,Object标签中包含ActiveX初始化逻辑,用于对接ActiveX初始化规范,实现对ActiveX环境的加载和运行。
或者,在Chromium内核的页面代码中的增加包含new ActiveXObject语法的js片段,包含new ActiveXObject语法的js片段中包含ActiveX初始化逻辑,用于对接ActiveX初始化规范,实现对ActiveX环境的加载和运行。
在Chromium内核的JS胶合引擎中增加数据转换逻辑,用于实现Chromium内核支持的V8数据类型和ActiveX支持的COM数据类型的自由转换,并传递JS调用参数及数据。
在Chromium内核的V8引擎中增加数据交互逻辑,用于获取所述业务系统与所述外围终端设备之间的交互数据。
其中,在Chromium内核的V8引擎中增加的数据交互逻辑可以包括:
COM方法调用逻辑或COM事件处理逻辑。
具体,通过在Chromium内核的V8引擎中增加ActiveXObject方法,用于对接ActiveX的COM方法调用规范,达到调度ActiveX的目的。
通过在Chromium内核的V8引擎中增加attach方法,用于对接ActiveX的COM事件处理规范,实现对ActiveX事件处理的对接。
Chromium内核可以理解为:Chromium的内核。Chromium可以理解为:由Google主导开发的网页浏览器。以BSD许可证等多重自由版权发行并开放源代码。Chromium的开发可能早自2006年即开始,设计思想基于简单、高速、稳定、安全等理念,在架构上使用了Apple发展出来的WebKit排版引擎、Safari的部份源代码与Firefox的成果,并采用Google独家开发出的V8引擎以提升解译JavaScript的效率,而且设计了“沙盒”、“黑名单”、“无痕浏览”等功能来实现稳定与安全的网页浏览环境。
ActiveX可以理解为:Microsoft对于一系列策略性面向对象程序技术和工具的称呼,其中主要的技术是组件对象模型(COM)。
ActiveX控件可以理解为:用于互联网的很小的程序,有时称为插件程序。它们会允许播放动画,或帮助执行任务。
在本申请中,Chromium内核在加载到包含ActiveX初始化逻辑的页面时,调用所述ActiveX初始化逻辑,运行ActiveX环境,使Chromium内核具备支持ActiveX的基础,在执行到所述包含ActiveX初始化逻辑的页面中业务系统与采用ActiveX控件的外围终端设备的数据交互语句时,调用所述Chromium内核的V8引擎中的数据交互逻辑,获取所述业务系统与所述外围终端设备之间的交互数据,实现交互数据的获取,并调用数据转换逻辑,满足业务系统与外围终端设备能够识别对方的数据的要求,通过以上方式可以保证基于Chromium内核的业务系统与采用ActiveX控件的外围终端设备能正常交互。
接下来对本申请实施例公开的基于上述介绍的Chromium内核的数据交互方法进行介绍,该方法应用于Chromium内核,如图1所示,为本申请提供的一种基于Chromium内核的数据交互方法实施例1的流程图,可以包括以下步骤:
步骤S11、在加载到包含ActiveX初始化逻辑的页面时,调用所述ActiveX初始化逻辑,运行ActiveX环境。
本实施例中,调用所述object标签中的ActiveX初始化逻辑,运行ActiveX环境,使Chromium内核具备支持ActiveX的基础。
在加载到包含ActiveX初始化逻辑的页面时,调用所述ActiveX初始化逻辑,运行ActiveX环境,可以包括但不局限于:
在加载到包含object标签的页面时,调用所述object标签中的ActiveX初始化逻辑,运行ActiveX环境;
或,在加载到包含有包含new ActiveXObject语法的js片段的页面时,调用包含new ActiveXObject语法的js片段中的ActiveX初始化逻辑,运行ActiveX环境。
步骤S12、在执行到所述包含ActiveX初始化逻辑的页面中业务系统与采用ActiveX控件的外围终端设备的数据交互语句时,调用所述Chromium内核的V8引擎中的数据交互逻辑,获取所述业务系统与所述外围终端设备之间的交互数据。
本实施例中,可以根据需要对数据交互逻辑进行设置,在此不做限制。
步骤S13、调用所述Chromium内核的JS胶合引擎中的数据转换逻辑,将所述业务系统与所述外围终端设备之间的交互数据,转换为符合对方支持的数据类型的数据,并将转换后的数据传递给对方。
本实施例中,调用所述Chromium内核的JS胶合引擎中的数据转换逻辑,将所述业务系统与所述外围终端设备之间的交互数据,转换为符合对方支持的数据类型的数据,并将转换后的数据传递给对方,满足业务系统与外围终端设备能够识别对方的数据的要求。
作为本申请另一可选实施例,参照图2,为本申请提供的一种基于Chromium内核的数据交互方法实施例2的流程图,本实施例主要是对上述实施例1描述的基于Chromium内核的数据交互方法的细化方案,如图2所示,该方法可以包括但并不局限于以下步骤:
步骤S21、在加载到包含ActiveX初始化逻辑的页面时,调用所述ActiveX初始化逻辑,运行ActiveX环境。
步骤S21与实施例1中的步骤S11相同,在此不再赘述。
步骤S22、在执行到所述包含ActiveX初始化逻辑的页面中调度所述外围设备的语句时,调用所述Chromium内核的V8引擎中的COM方法调用逻辑,通过调度所述外围终端设备,读取所述外围终端设备的COM类型数据。
在执行到所述包含ActiveX初始化逻辑中调度所述外围设备的语句时,说明业务系统需要从外围终端设备中读取数据,则调用所述Chromium内核的V8引擎中的COM方法调用逻辑,通过调度所述外围终端设备,读取所述外围终端设备的COM类型数据。
步骤S22为实施例1中步骤S11的一种具体实施方式。
步骤S23、调用所述Chromium内核的JS胶合引擎中的数据转换逻辑,将所述外围终端设备的COM类型数据转换为V8类型数据,并将转换得到的V8类型数据传递给所述业务系统。
步骤S23为实施例1中步骤S13的一种具体实施方式。
作为本申请另一可选实施例,参照图3,为本申请提供的一种基于Chromium内核的数据交互方法实施例3的流程图,本实施例主要是对上述实施例1描述的基于Chromium内核的数据交互方法的细化方案,如图3所示,该方法可以包括但并不局限于以下步骤:
步骤S31、在加载到包含ActiveX初始化逻辑的页面时,调用所述ActiveX初始化逻辑,运行ActiveX环境。
步骤S31与实施例1中的步骤S11相同,在此不再赘述。
步骤S32、在执行到所述包含ActiveX初始化逻辑的页面中向所述外围终端设备发送数据的语句时,调用所述Chromium内核的V8引擎中的COM方法调用逻辑,获取所述业务系统的待发送的V8类型数据。
在执行到所述包含ActiveX初始化逻辑的页面中向所述外围终端设备发送数据的语句时,说明业务系统需要向外围终端设备发送数据,则可以调用所述Chromium内核的V8引擎中的COM方法调用逻辑,获取所述业务系统的待发送的V8类型数据。
步骤S32为实施例1中步骤S11的一种具体实施方式。
步骤S33、调用所述Chromium内核的JS胶合引擎中的数据转换逻辑,将所述业务系统的待发送的V8类型数据转换为COM类型数据,并将转换得到的COM类型数据传递给所述外围终端设备。
步骤S33为实施例1中步骤S13的一种具体实施方式。
作为本申请另一可选实施例,参照图4,为本申请提供的一种基于Chromium内核的数据交互方法实施例4的流程图,本实施例主要是对上述实施例1描述的基于Chromium内核的数据交互方法的细化方案,如图4所示,该方法可以包括但并不局限于以下步骤:
步骤S41、在加载到包含ActiveX初始化逻辑的页面时,调用所述ActiveX初始化逻辑,运行ActiveX环境。
步骤S41与实施例1中的步骤S11相同,在此不再赘述。
步骤S42、在执行到所述包含ActiveX初始化逻辑的页面中ActiveX事件处理语句时,调用所述Chromium内核的V8引擎中的COM事件处理逻辑,接收所述外围终端设备返回的COM类型数据。
在执行到所述包含ActiveX初始化逻辑的页面中ActiveX事件处理语句时,说明业务系统需要进行异步调用,如,异步接收外围终端设备产生的异常或消息,则可以调用所述Chromium内核的V8引擎中的COM事件处理逻辑,接收所述外围终端设备返回的COM类型数据。
步骤S42为实施例1中步骤S11的一种具体实施方式。
步骤S43、调用所述Chromium内核的JS胶合引擎中的数据转换逻辑,将所述外围终端设备返回的COM类型数据转换为V8类型数据,并将转换得到的V8类型数据传递给所述业务系统。
步骤S43为实施例1中步骤S13的一种具体实施方式。
作为本申请另一可选实施例,参照图5,为本申请提供的一种基于Chromium内核的数据交互方法实施例5的流程图,本实施例主要是对上述实施例1描述的基于Chromium内核的数据交互方法的扩展方案,如图5所示,该方法可以包括但并不局限于以下步骤:
步骤S51、在加载到包含ActiveX初始化逻辑的页面时,调用所述ActiveX初始化逻辑,运行ActiveX环境。
步骤S52、在执行到所述包含ActiveX初始化逻辑的页面中业务系统与采用ActiveX控件的外围终端设备的数据交互语句时,调用所述Chromium内核的V8引擎中的数据交互逻辑,获取所述业务系统与所述外围终端设备之间的交互数据。
步骤S53、调用所述Chromium内核的JS胶合引擎中的数据转换逻辑,将所述业务系统与所述外围终端设备之间的交互数据,转换为符合对方支持的数据类型的数据,并将转换后的数据传递给对方。
步骤S51-S53的详细过程可以参见实施例1中步骤S11-S13的相关介绍,在此不再赘述。
步骤S54、在加载到不包含ActiveX初始化逻辑的页面时,按照所述Chromium内核的原始处理逻辑,执行浏览器功能。
所述Chromium内核的原始处理逻辑可以理解为:Chromium内核本身具备的处理逻辑。
接下来对本申请提供的基于Chromium内核的数据交互装置进行介绍,下文介绍的基于Chromium内核的数据交互装置与上文介绍的基于Chromium内核的数据交互方法可相互对应参照。
请参见图6,基于Chromium内核的数据交互装置应用于Chromium内核,基于Chromium内核的数据交互装置包括:环境运行模块11、获取模块12和转换传递模块13。
环境运行模块11,用于在加载到包含ActiveX初始化逻辑的页面时,调用所述object标签中的ActiveX初始化逻辑,运行ActiveX环境;
获取模块12,用于在执行到所述包含ActiveX初始化逻辑的页面中业务系统与采用ActiveX控件的外围终端设备的数据交互语句时,调用所述Chromium内核的V8引擎中的数据交互逻辑,获取所述业务系统与所述外围终端设备之间的交互数据;
转换传递模块13,用于调用所述Chromium内核的JS胶合引擎中的数据转换逻辑,将所述业务系统与所述外围终端设备之间的交互数据,转换为符合对方支持的数据类型的数据,并将转换后的数据传递给对方。
本实施例中,在所述业务系统与采用ActiveX控件的外围终端设备的数据交互语句为调度所述外围设备的语句的情况下,所述数据交互逻辑为COM方法调用逻辑,所述获取模块12,具体可以用于:
通过调度所述外围终端设备,读取所述外围终端设备的COM类型数据;
所述转换传递模块13,具体可以用于:
调用所述Chromium内核的JS胶合引擎中的数据转换逻辑,将所述外围终端设备的COM类型数据转换为V8类型数据,并将转换得到的V8类型数据传递给所述业务系统。
本实施例中,在所述业务系统与采用ActiveX控件的外围终端设备的数据交互语句为向所述外围终端设备发送数据的语句的情况下,所述数据交互逻辑为COM方法调用逻辑,所述获取模块12,具体可以用于:
获取所述业务系统的待发送的V8类型数据;
所述转换传递模块13,具体可以用于:
调用所述Chromium内核的JS胶合引擎中的数据转换逻辑,将所述业务系统的待发送的V8类型数据转换为COM类型数据,并将转换得到的COM类型数据传递给所述外围终端设备。
本实施例中,在所述业务系统与采用ActiveX控件的外围终端设备的数据交互语句为ActiveX事件处理语句的情况下,所述数据交互逻辑为COM事件处理逻辑,所述获取模块12,具体可以用于:
接收所述外围终端设备返回的COM类型数据;
所述转换传递模块13,具体可以用于:
调用所述Chromium内核的JS胶合引擎中的数据转换逻辑,将所述外围终端设备返回的COM类型数据转换为V8类型数据,并将转换得到的V8类型数据传递给所述业务系统。
本实施例中,基于Chromium内核的数据交互装置还可以包括:
执行模块,用于在加载到不包含ActiveX初始化逻辑的页面时,按照所述Chromium内核的原始处理逻辑,执行浏览器功能。
需要说明的是,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似的部分互相参见即可。对于装置类实施例而言,由于其与方法实施例基本相似,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
最后,还需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
为了描述的方便,描述以上装置时以功能分为各种单元分别描述。当然,在实施本申请时可以把各单元的功能在同一个或多个软件和/或硬件中实现。
通过以上的实施方式的描述可知,本领域的技术人员可以清楚地了解到本申请可借助软件加必需的通用硬件平台的方式来实现。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在存储介质中,如ROM/RAM、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本申请各个实施例或者实施例的某些部分所述的方法。
以上对本申请所提供的一种基于Chromium内核的数据交互方法及装置进行了详细介绍,本文中应用了具体个例对本申请的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本申请的方法及其核心思想;同时,对于本领域的一般技术人员,依据本申请的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本申请的限制。

Claims (10)

1.一种基于Chromium内核的数据交互方法,其特征在于,应用于Chromium内核,该方法包括:
在加载到包含ActiveX初始化逻辑的页面时,调用所述ActiveX初始化逻辑,运行ActiveX环境;
在执行到所述包含ActiveX初始化逻辑的页面中业务系统与采用ActiveX控件的外围终端设备的数据交互语句时,调用所述Chromium内核的V8引擎中的数据交互逻辑,获取所述业务系统与所述外围终端设备之间的交互数据;
调用所述Chromium内核的JS胶合引擎中的数据转换逻辑,将所述业务系统与所述外围终端设备之间的交互数据,转换为符合对方支持的数据类型的数据,并将转换后的数据传递给对方;
其中,在Chromium内核的页面渲染引擎中增加有Object标签,所述Object标签中包含ActiveX初始化逻辑,用于对接ActiveX初始化规范,实现对ActiveX环境的加载和运行;
或者,在Chromium内核的页面代码中增加有包含new ActiveXObject语法的js片段,包含new ActiveXObject语法的js片段中包含ActiveX初始化逻辑,用于对接ActiveX初始化规范,实现对ActiveX环境的加载和运行。
2.根据权利要求1所述的方法,其特征在于,在所述业务系统与采用ActiveX控件的外围终端设备的数据交互语句为调度所述外围终端设备的语句的情况下,所述数据交互逻辑为COM方法调用逻辑,所述获取所述业务系统与所述外围终端设备之间的交互数据,包括:
通过调度所述外围终端设备,读取所述外围终端设备的COM类型数据;
所述调用所述Chromium内核的JS胶合引擎中的数据转换逻辑,将所述业务系统与所述外围终端设备之间的交互数据,转换为符合对方支持的数据类型的数据,并将转换后的数据传递给对方,包括:
调用所述Chromium内核的JS胶合引擎中的数据转换逻辑,将所述外围终端设备的COM类型数据转换为V8类型数据,并将转换得到的V8类型数据传递给所述业务系统。
3.根据权利要求1所述的方法,其特征在于,在所述业务系统与采用ActiveX控件的外围终端设备的数据交互语句为向所述外围终端设备发送数据的语句的情况下,所述数据交互逻辑为COM方法调用逻辑,所述获取所述业务系统与所述外围终端设备之间的交互数据,包括:
获取所述业务系统的待发送的V8类型数据;
所述调用所述Chromium内核的JS胶合引擎中的数据转换逻辑,将所述业务系统与所述外围终端设备之间的交互数据,转换为符合对方支持的数据类型的数据,并将转换后的数据传递给对方,包括:
调用所述Chromium内核的JS胶合引擎中的数据转换逻辑,将所述业务系统的待发送的V8类型数据转换为COM类型数据,并将转换得到的COM类型数据传递给所述外围终端设备。
4.根据权利要求1所述的方法,其特征在于,在所述业务系统与采用ActiveX控件的外围终端设备的数据交互语句为ActiveX事件处理语句的情况下,所述数据交互逻辑为COM事件处理逻辑,所述获取所述业务系统与所述外围终端设备之间的交互数据,包括:
接收所述外围终端设备返回的COM类型数据;
所述调用所述Chromium内核的JS胶合引擎中的数据转换逻辑,将所述业务系统与所述外围终端设备之间的交互数据,转换为符合对方支持的数据类型的数据,并将转换后的数据传递给对方,包括:
调用所述Chromium内核的JS胶合引擎中的数据转换逻辑,将所述外围终端设备返回的COM类型数据转换为V8类型数据,并将转换得到的V8类型数据传递给所述业务系统。
5.根据权利要求1所述的方法,其特征在于,所述方法还包括:
在加载到不包含ActiveX初始化逻辑的页面时,按照所述Chromium内核的原始处理逻辑,执行浏览器功能。
6.一种基于Chromium内核的数据交互装置,其特征在于,应用于Chromium内核,该装置包括:
环境运行模块,用于在加载到包含ActiveX初始化逻辑的页面时,调用所述ActiveX初始化逻辑,运行ActiveX环境;
获取模块,用于在执行到所述包含ActiveX初始化逻辑的页面中业务系统与采用ActiveX控件的外围终端设备的数据交互语句时,调用所述Chromium内核的V8引擎中的数据交互逻辑,获取所述业务系统与所述外围终端设备之间的交互数据;
转换传递模块,用于调用所述Chromium内核的JS胶合引擎中的数据转换逻辑,将所述业务系统与所述外围终端设备之间的交互数据,转换为符合对方支持的数据类型的数据,并将转换后的数据传递给对方;
其中,在Chromium内核的页面渲染引擎中增加有Object标签,所述Object标签中包含ActiveX初始化逻辑,用于对接ActiveX初始化规范,实现对ActiveX环境的加载和运行;
或者,在Chromium内核的页面代码中增加有包含new ActiveXObject语法的js片段,包含new ActiveXObject语法的js片段中包含ActiveX初始化逻辑,用于对接ActiveX初始化规范,实现对ActiveX环境的加载和运行。
7.根据权利要求6所述的装置,其特征在于,在所述业务系统与采用ActiveX控件的外围终端设备的数据交互语句为调度所述外围终端设备的语句的情况下,所述数据交互逻辑为COM方法调用逻辑,所述获取模块,具体用于:
通过调度所述外围终端设备,读取所述外围终端设备的COM类型数据;
所述转换传递模块,具体用于:
调用所述Chromium内核的JS胶合引擎中的数据转换逻辑,将所述外围终端设备的COM类型数据转换为V8类型数据,并将转换得到的V8类型数据传递给所述业务系统。
8.根据权利要求6所述的装置,其特征在于,在所述业务系统与采用ActiveX控件的外围终端设备的数据交互语句为向所述外围终端设备发送数据的语句的情况下,所述数据交互逻辑为COM方法调用逻辑,所述获取模块,具体用于:
获取所述业务系统的待发送的V8类型数据;
所述转换传递模块,具体用于:
调用所述Chromium内核的JS胶合引擎中的数据转换逻辑,将所述业务系统的待发送的V8类型数据转换为COM类型数据,并将转换得到的COM类型数据传递给所述外围终端设备。
9.根据权利要求6所述的装置,其特征在于,在所述业务系统与采用ActiveX控件的外围终端设备的数据交互语句为ActiveX事件处理语句的情况下,所述数据交互逻辑为COM事件处理逻辑,所述获取模块,具体用于:
接收所述外围终端设备返回的COM类型数据;
所述转换传递模块,具体用于:
调用所述Chromium内核的JS胶合引擎中的数据转换逻辑,将所述外围终端设备返回的COM类型数据转换为V8类型数据,并将转换得到的V8类型数据传递给所述业务系统。
10.根据权利要求6所述的装置,其特征在于,所述装置还包括:
执行模块,用于在加载到不包含ActiveX初始化逻辑的页面时,按照所述Chromium内核的原始处理逻辑,执行浏览器功能。
CN201911358744.XA 2019-12-25 2019-12-25 一种基于Chromium内核的数据交互方法及装置 Active CN113032087B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201911358744.XA CN113032087B (zh) 2019-12-25 2019-12-25 一种基于Chromium内核的数据交互方法及装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201911358744.XA CN113032087B (zh) 2019-12-25 2019-12-25 一种基于Chromium内核的数据交互方法及装置

Publications (2)

Publication Number Publication Date
CN113032087A CN113032087A (zh) 2021-06-25
CN113032087B true CN113032087B (zh) 2024-02-23

Family

ID=76458829

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201911358744.XA Active CN113032087B (zh) 2019-12-25 2019-12-25 一种基于Chromium内核的数据交互方法及装置

Country Status (1)

Country Link
CN (1) CN113032087B (zh)

Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102681850A (zh) * 2012-05-07 2012-09-19 奇智软件(北京)有限公司 一种基于Webkit 内核提供网页浏览的方法及装置
CN103179166A (zh) * 2011-12-23 2013-06-26 腾讯科技(深圳)有限公司 在客户端中提供服务的方法和客户端
CN104077117A (zh) * 2013-03-26 2014-10-01 联想(北京)有限公司 信息处理方法和控制点设备
CN104516913A (zh) * 2013-09-30 2015-04-15 昆明能讯科技有限责任公司 基于多种内核技术的网页浏览器
CN104679489A (zh) * 2013-12-02 2015-06-03 厦门极致互动网络技术有限公司 一种在网络游戏客户端中内置网络浏览器的系统及方法
CN105138337A (zh) * 2015-08-31 2015-12-09 华为技术有限公司 一种插件适配方法及插件适配装置
CN107229480A (zh) * 2017-06-19 2017-10-03 郑州云海信息技术有限公司 一种基于web技术的桌面应用构建方法及装置
CN108279902A (zh) * 2018-02-08 2018-07-13 合肥盈云信息科技有限公司 基于Lua脚本技术的多终端共享底层框架生成、应用方法
CN109948085A (zh) * 2017-11-23 2019-06-28 广州市动景计算机科技有限公司 浏览器内核初始化方法、装置、计算设备和存储介质

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20060059127A1 (en) * 2004-09-15 2006-03-16 International Business Machines Corporation Method, system, and storage medium for facilitating application development
US10013267B1 (en) * 2015-12-16 2018-07-03 Amazon Technologies, Inc. Pre-triggers for code execution environments
US20190384762A1 (en) * 2017-02-10 2019-12-19 Count Technologies Ltd. Computer-implemented method of querying a dataset

Patent Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103179166A (zh) * 2011-12-23 2013-06-26 腾讯科技(深圳)有限公司 在客户端中提供服务的方法和客户端
CN102681850A (zh) * 2012-05-07 2012-09-19 奇智软件(北京)有限公司 一种基于Webkit 内核提供网页浏览的方法及装置
CN104077117A (zh) * 2013-03-26 2014-10-01 联想(北京)有限公司 信息处理方法和控制点设备
CN104516913A (zh) * 2013-09-30 2015-04-15 昆明能讯科技有限责任公司 基于多种内核技术的网页浏览器
CN104679489A (zh) * 2013-12-02 2015-06-03 厦门极致互动网络技术有限公司 一种在网络游戏客户端中内置网络浏览器的系统及方法
CN105138337A (zh) * 2015-08-31 2015-12-09 华为技术有限公司 一种插件适配方法及插件适配装置
CN107229480A (zh) * 2017-06-19 2017-10-03 郑州云海信息技术有限公司 一种基于web技术的桌面应用构建方法及装置
CN109948085A (zh) * 2017-11-23 2019-06-28 广州市动景计算机科技有限公司 浏览器内核初始化方法、装置、计算设备和存储介质
CN108279902A (zh) * 2018-02-08 2018-07-13 合肥盈云信息科技有限公司 基于Lua脚本技术的多终端共享底层框架生成、应用方法

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
"Evolutionary Optimization of Kernel Weights Improves Protein Complex Comembership Prediction";Marc Hulsman;《 IEEE/ACM Transactions on Computational Biology and Bioinformatics》;全文 *
基于嵌入式Linux和Ajax技术的Web异步交互设计;吕国勇;史祥龙;;计算机应用(第S1期);全文 *

Also Published As

Publication number Publication date
CN113032087A (zh) 2021-06-25

Similar Documents

Publication Publication Date Title
CN109002362B (zh) 一种服务方法、装置、系统以及电子设备
CN111176626B (zh) 跨编程语言的代码调用方法及装置、介质、设备
US9760415B2 (en) Code service for language-independent dispatch
CN107957911B (zh) 组件调用的方法和装置、组件数据处理的方法和装置
CA2511916A1 (en) System and method of building wireless component applications
CA2540361A1 (en) System and method for extending capabilities and execution efficiency of script based applications
CN112035112B (zh) 应用程序开发方法、系统、介质和电子设备
CN111381817A (zh) 实现跨平台多语言开发的方法、装置、介质和电子设备
CN113076209B (zh) 通信方法、装置、电子设备及存储介质
CN111857658A (zh) 一种渲染动态组件的方法、装置、介质和电子设备
CN103473034A (zh) 一种动态发布Web 服务的方法和装置
Hsu Extending UML to model Web 2.0‐based context‐aware applications
CN111552463A (zh) 一种页面跳转方法、装置、计算机设备及存储介质
CN113032087B (zh) 一种基于Chromium内核的数据交互方法及装置
EP2400390A1 (en) Provision of services and libraries to remote clients
US8775183B2 (en) Application of user-specified transformations to automatic speech recognition results
US8260944B2 (en) Using a state machine embedded within a session initiation protocol (SIP) servlet to implement an application programming interface (API)
CN111190750B (zh) 一种数据处理方法以及系统
CN112416533A (zh) 在浏览器上运行应用程序的方法、装置及电子设备
CN116166457A (zh) 数据处理方法及相关设备
CN110278144B (zh) 一种卡片消息发送方法、装置、介质和电子设备
CN106570143B (zh) 一种发送响应对象的方法和装置
CN110955430A (zh) 应用程序原生能力的调用方法、装置及电子设备
CN117056317B (zh) 数据处理方法、装置、设备及计算机可读存储介质
CN113342633B (zh) 一种性能测试方法和装置

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant