CN103177028A - 一种信息交互的方法和系统 - Google Patents
一种信息交互的方法和系统 Download PDFInfo
- Publication number
- CN103177028A CN103177028A CN2011104396269A CN201110439626A CN103177028A CN 103177028 A CN103177028 A CN 103177028A CN 2011104396269 A CN2011104396269 A CN 2011104396269A CN 201110439626 A CN201110439626 A CN 201110439626A CN 103177028 A CN103177028 A CN 103177028A
- Authority
- CN
- China
- Prior art keywords
- abstraction
- api
- client
- web end
- level
- 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.)
- Granted
Links
Images
Landscapes
- Information Transfer Between Computers (AREA)
Abstract
本发明提供一种信息交互的方法和系统,涉及计算机技术领域,所述方法包括:构建API抽象层,API抽象层分别连通Web端与客户端;Web端与客户端通过API抽象层进行信息交互。所述系统包括:Web端、客户端、API抽象层;API抽象层,用于分别连通Web端与客户端;Web端与客户端,分别用于通过API抽象层进行信息交互。本发明通过上述方案,Web端无法直接调用客户端接口,保障了客户端的安全稳定;并且,由于API抽象层的存在,Web端与客户端任何一方的变更不会直接影响到对端,同一套API在只做少量改动的前提下可以同时兼容多个环境或平台,如Windows、Mac、Linux或移动端等,具有良好的灵活性、兼容性和可扩展性。此外,API抽象层可直接发布,无需用户升级应用程序,易于运维。
Description
技术领域
本发明涉及计算机技术领域,特别涉及一种信息交互的方法和系统。
背景技术
Web应用的开发环境为Web,开发人员可以利用Web的优势搭建出丰富多彩的应用界面,并且容易部署和发布,开发门槛低,技术流行,且安全性好,不会对本地系统造成破坏。在Web的基础上,把本地服务接入到Web的脚本空间,让Web页面的脚本可以调用到本地的服务,本地服务则提供了Web脚本不具备的能力,如本地文件的操作、基于TCP(Transmission Control Protocol,传输控制协议)或者UDP(User Datagram Protocol,用户数据报协议)的数据服务等,从而扩展了Web的能力,设计出更强大的Web应用。
为了实现以上功能,客户端必须向Web端提供开放API(Application ProgrammingInterface,应用程序编程接口),通过调用API使得Web端获得客户端提供的强大的服务能力,实现Web和本地服务的交互,为用户提供更完善、更丰富的产品体验。目前,客户端采用的是直接向Web端开放API的方法,以浏览器客户端为例,浏览器提供了一个external(外部)对象,Web端的应用页面可以直接通过Javascript脚本访问external对象下的属性和方法。客户端通过扩展external对象,在external对象下添加自有的属性和方法供Web页面访问,这些自有的属性和方法就是客户端开放出来的API,这种客户端开放API的方法称为裸调客户端API。
在实现本发明的过程中,发明人发现现有技术至少存在以下问题:
在裸调客户端API的方案中,Web端的应用页面可以通过Javascript脚本直接访问客户端,可任意操作客户端提供的API接口,行为不可控,安全性差。并且,客户端变更时,会直接影响Web端的应用页面,灵活性、兼容性、可扩展性差。
发明内容
为了在开放API的同时,保障客户端的安全稳定,增强灵活性、兼容性、和可扩展性,本发明实施例提供了一种信息交互的方法和系统。所述技术方案如下:
一种信息交互的方法,所述方法包括:
构建API抽象层,所述API抽象层分别连通Web端与客户端;
所述Web端与所述客户端通过所述API抽象层进行信息交互。
其中,所述API抽象层分别连通Web端与客户端,具体包括:
所述API抽象层与所述客户端连通,并且所述API抽象层的子页面嵌入所述Web端的应用页面;
或者,所述API抽象层与所述客户端连通,并且所述API抽象层嵌入所述Web端的应用页面;
或者,所述API抽象层封装在所述客户端,并且所述API抽象层与所述Web端连通;
或者,所述客户端载入两个子页面,所述两个子页面分别为所述Web端的应用页面和所述抽象层的页面。
其中,所述Web端与所述客户端通过所述API抽象层进行信息交互,具体包括:
所述Web端通过所述API抽象层提供的API接口,向所述API抽象层发送API调用请求;
所述API抽象层对所述API调用请求进行权限验证,如果验证通过,将所述API调用请求的格式转换为所述客户端的格式,对转换后的API调用请求附加安全验证,通过所述客户端提供的API接口,向所述客户端发送附加安全验证的API调用请求;
所述客户端如果通过安全验证,对所述API调用请求进行相应的响应。
其中,所述Web端与所述客户端通过所述API抽象层进行信息交互,具体包括:
所述API抽象层通过所述客户端提供的事件接口,通知所述客户端需要回调的响应事件;
所述客户端通过事件回调函数,将需要回调的响应事件发送给所述API抽象层;
所述API抽象层对响应事件进行权限验证,如果验证通过,判断响应事件是否需要回调,如果需要回调,将响应事件转换为所述Web端的格式,并发送给所述Web端。
其中,信息交互的数据类型为字符串。
一种信息交互的系统,所述系统包括:Web端、客户端、API抽象层;
所述API抽象层,用于分别连通Web端与客户端;
所述Web端与所述客户端,分别用于通过所述API抽象层进行信息交互。
其中,所述API抽象层,具体用于与所述客户端连通,并且所述API抽象层的子页面嵌入所述Web端的应用页面;
或者,所述API抽象层,具体用于与所述客户端连通,并且所述API抽象层嵌入所述Web端的应用页面;
或者,所述API抽象层,具体用于封装在所述客户端,并且所述API抽象层与所述Web端连通;
或者,所述客户端,还用于载入两个子页面,所述两个子页面分别为所述Web端的应用页面和所述抽象层的页面。
其中,所述Web端,具体用于通过所述API抽象层提供的API接口,向所述API抽象层发送API调用请求;
所述API抽象层,具体用于对所述API调用请求进行权限验证,如果验证通过,将所述API调用请求的格式转换为所述客户端的格式,对转换后的API调用请求附加安全验证,通过所述客户端提供的API接口,向所述客户端发送附加安全验证的API调用请求;
所述客户端,具体用于如果通过安全验证,对所述API调用请求进行相应的响应。
其中,所述API抽象层,还用于通过所述客户端提供的事件接口,通知所述客户端需要回调的响应事件;
所述客户端,具体用于通过事件回调函数,将需要回调的响应事件发送给所述API抽象层;
所述API抽象层,具体用于对响应事件进行权限验证,如果验证通过,判断响应事件是否需要回调,如果需要回调,将响应事件转换为所述Web端的格式,并发送给所述Web端。
其中,信息交互的数据类型为字符串。
一种信息交互的方法,所述方法包括:
构建API抽象层,所述API抽象层分别连通Web端与客户端;
所述Web端通过所述API抽象层对所述客户端进行API调用。
其中,所述API抽象层分别连通Web端与客户端,具体包括:
所述API抽象层与所述客户端连通,并且所述API抽象层的子页面中嵌入所述Web端的应用页面;
或者,所述API抽象层与所述客户端连通,并且所述API抽象层嵌入所述Web端的应用页面;
或者,所述API抽象层封装在所述客户端,并且所述API抽象层与所述Web端连通;
或者,所述客户端载入两个子页面,所述两个子页面分别为所述Web端的应用页面和所述抽象层的页面。
其中,所述Web端通过所述API抽象层对所述客户端进行API调用,具体包括:
所述Web端通过所述API抽象层提供的API接口,向所述API抽象层发送API调用请求;
所述API抽象层对所述API调用请求进行权限验证,如果验证通过,将所述API调用请求的格式转换为所述客户端的格式,对转换后的API调用请求附加安全验证,通过所述客户端提供的API接口,向所述客户端发送附加安全验证的API调用请求;
所述客户端如果通过安全验证,对所述API调用请求进行相应的响应。
其中,所述Web端通过所述API抽象层对所述客户端进行API调用,具体包括:
所述API抽象层通过所述客户端提供的事件接口,通知所述客户端需要回调的响应事件;
所述客户端通过事件回调函数,将需要回调的响应事件发送给所述API抽象层;
所述API抽象层对响应事件进行权限验证,如果验证通过,判断响应事件是否需要回调,如果需要回调,将响应事件转换为所述Web端的格式,并发送给所述Web端。
其中,API调用的数据类型为字符串。
本发明实施例提供的技术方案的有益效果是:
通过构建API抽象层,API抽象层分别连通Web端与客户端,Web端与客户端通过API抽象层进行信息交互,Web端与客户端没有直接交互,Web端无法直接调用客户端接口,保障了客户端的安全稳定;并且,由于API抽象层的存在,Web端与客户端任何一方的变更不会直接影响到对端,同一套API在只做少量改动的前提下可以同时兼容多个环境或平台,如Windows、Mac、Linux或移动端等,具有良好的灵活性、兼容性和可扩展性。此外,API抽象层可直接发布,无需用户升级应用程序,易于运维。
附图说明
为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本发明的实施例1提供的信息交互的方法流程图;
图2是本发明的实施例1提供的API抽象层分别连通Web端与客户端的实现示意图;
图3是本发明的实施例1提供的Web端与客户端通过API抽象层进行信息交互的过程示意图;
图4是本发明的实施例1提供的Web端与客户端通过API抽象层进行信息交互的一实例的流程图;
图5是本发明的实施例1提供的Web端与客户端通过API抽象层进行信息交互的一实例的过程示意图;
图6是本发明的实施例2提供的信息交互的系统结构示意图;
图7是本发明的实施例3提供的信息交互的方法流程图。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚,下面将结合附图对本发明实施方式作进一步地详细描述。
首先,对以下各实施例中的用词和术语进行解释:
客户端,是指手机、个人电脑等终端上的具有特定功能的应用,如浏览器等。
Web端的应用页面,是指使用Web页面作为基础,提供某种功能的应用页面,相对于普通的Web页面,Web端的应用页面更强调功能性,例如邮箱、小游戏、日程表等。
Frame,框架页面。这里特指IFrame。IFrame是HTML(Hypertext Markup Language,超文本标记语言)语言里的一种标准元素,可以被用来在一个页面里面嵌入其它的页面。后续提到的API抽象层的子页面是指API抽象层的IFrame,客户端载入的两个子页面是指客户端载入的两个IFrame。
域(Domain),标识了一个网络的范围,比如www.qq.com和www.tencent.com就分别属于不同的域。
源(Origin),它一般由协议(Protocol)、域和端口号(Port)组成。
跨域:跨域就是指两个不同域的页面之间进行对象访问,但一般情况下我们所称的“跨域”实际上为“跨源”。以下均属于“跨域”情况:www.qq.com和www.tencent.com属于完全跨域,www.qq.com和qq.com属于跨子域;http://www.qq.com和https://www.qq.com是协议不同;http://www.qq.com和http://www.qq.com:8080则是端口不同。根据“同源策略(Same origin policy)”,几乎所有浏览器都禁止不同源之间的对象访问。
Javascript,简称js,一种被广泛用于客户端Web开发的脚本语言,常被用来给HTML网页添加动态功能,比如响应用户的各种操作等。
实施例1
参见图1,本实施例提供了一种信息交互的方法,该方法在Web端与客户端之间添加API抽象层,将Web端与客户端隔离开来,该方法具体包括:
101:构建API抽象层,API抽象层分别连通Web端与客户端;
102:Web端与客户端通过API抽象层进行信息交互。
其中,步骤101中的API抽象层分别连通Web端与客户端,具体可以有以下四种实现方案:
一、参见图2,API抽象层与客户端连通,并且API抽象层的子页面嵌入Web端的应用页面;
其中,API抽象层的子页面也即API抽象层的IFrame。
其中,客户端可以是浏览器。利用浏览器本身的跨域保护机制(或者叫同源策略),使Web端的应用页面无法直接访问客户端,从而达到限制Web端的应用页面的调用客户端API的目的。
二、页面内方案:API抽象层与客户端连通,并且API抽象层嵌入Web端的应用页面;
页面内方案能够保证版本兼容性和灵活性,但是安全性比第一种方案差,因为Web端的应用可以修改API抽象层,并且由于缺少同源策略的保护,应用甚至可以直接获取到应用承载者(如开放平台)的关键数据,造成用户隐私的泄漏。
三、页面外方案:API抽象层封装在客户端,并且API抽象层与Web端连通;
页面外方案由于依赖客户端的实现,因此移植难度较大,迁移成本极高。
四、子页面隐藏方案:客户端载入两个子页面,两个子页面分别为Web端的应用页面和抽象层的页面。
其中,抽象层的页面对用户不可见,因此,称为子页面隐藏方案。
其中,步骤102的Web端与客户端通过API抽象层进行信息交互,参见图3,至少可以有以下两种方案:
一、API调用流程:
1021a:Web端通过API抽象层提供的API接口,向API抽象层发送API调用请求;
1021b:API抽象层对API调用请求进行权限验证,如果验证通过,将API调用请求的格式转换为客户端的格式,对转换后的API调用请求附加安全验证,通过客户端提供的API接口,向客户端发送附加安全验证的API调用请求;
1021c:客户端如果通过安全验证,对API调用请求进行相应的响应。
二、事件响应流程:
1022a:API抽象层通过客户端提供的事件接口,通知客户端需要回调的响应事件;
1022b:客户端通过事件回调函数,将需要回调的响应事件发送给API抽象层;
1022c:API抽象层对响应事件进行权限验证,如果验证通过,判断该响应事件是否需要回调,如果需要回调,将响应事件转换为Web端的格式,并发送给Web端。
Web端接收响应事件。进一步的,步骤102中的信息交互的数据类型为字符串,从而可以兼容不同的平台。
参见图4、图5,下面以一具体实例说明上述Web端与客户端通过API抽象层进行信息交互的过程。
201:Web端注册一监听事件:应用窗口大小改变事件“event.window.resize”,向API抽象层发送事件监听请求,即进行API调用;
具体的,Web端可以通过API抽象层提供的事件监听接口,向API抽象层发送事件监听请求。实体实现时,Web端可以直接调用API抽象层提供的事件监听接口,从而向API抽象层发送事件监听请求。
202:API抽象层对Web端发送的事件监听请求进行权限验证,如果验证不通过,API抽象层拒绝Web的请求,如果验证通过,将事件监听请求的格式转换为客户端的格式,并附加安全验证后发送客户端;
其中,将事件监听请求的格式转换为客户端的格式,并附加安全验证后发送客户端,具体为:事件监听请求以密钥和事件名为参数,例如,addClientEvent(key,eventName);其中,key为密钥,eventName为事件名,然后API抽象层可以通过客户端提供的事件注册接口,将附加安全验证的事件监听请求发送给客户端。
203:客户端收到API抽象层发送的事件监听请求,对其中的密钥进行安全验证,如果验证通过,添加对该事件的监听;
204:Web端向API抽象层发送设置窗口大小的请求;
205:API抽象层对该请求进行权限验证,如果验证不通过,拒绝该请求,如果验证通过,将设置窗口大小的请求转换为客户端的格式,并附加安全验证后发送客户端;
其中,将设置窗口大小的请求转换为客户端的格式,并附加安全验证后发送客户端,具体为:设置窗口大小的请求以密钥和Web端传递来的窗口宽高为参数,例如,setWinSize(key,w,h);其中,key为密钥,w为窗口宽,h为窗口高,然后API抽象层可以通过客户端提供的接口,将附加安全验证的设置窗口大小的请求发送给客户端。
206:客户端收到API抽象层发送的设置窗口大小的请求,对其中的密钥进行安全验证,如果验证通过,按照Web端传递来的窗口宽高参数改变窗口大小,完成API调用,即实现客户端API接口相应的调用功能;
207:客户端确定窗口大小改变事件需要通知API抽象层,通过事件回调函数将窗口大小改变事件发送给API抽象层;
图5中以客户端事件A和客户端事件B表示客户端事件,例如,窗口大小改变事件就是一个客户端事件。
进一步,在步骤207之前,API抽象层通过客户端提供的事件接口,通知客户端窗口大小改变事件是需要回调的事件。
208:API抽象层对窗口大小改变事件进行权限验证,如果验证通过,判断窗口大小改变事件是否需要回调,如果需要回调,将窗口大小改变事件转换为Web端的格式,并发送(或者派发)给Web端,以通知Web端,完成事件响应通知。
以上是以应用窗口大小改变事件、设置窗口大小事件为例说明Web端与客户端通过API抽象层进行信息交互的过程,本领域技术人员可以理解对于Web端与客户端通过API抽象层进行信息交互的其他事件与上述过程相似,例如,应用分享事件等,本实施例不再一一列举。
本实施例通过构建API抽象层,API抽象层分别连通Web端与客户端,Web端与客户端通过API抽象层进行信息交互,Web端与客户端没有直接交互,Web端无法直接调用客户端接口,保障了客户端的安全稳定;并且,由于API抽象层的存在,Web端与客户端任何一方的变更不会直接影响到对端,同一套API在只做少量改动的前提下可以同时兼容多个环境或平台,如Windows、Mac、Linux或移动端等,具有良好的灵活性、兼容性和可扩展性。此外,API抽象层可直接发布,无需用户升级应用程序,易于运维。
实施例2
参见图6,本实施例提供了一种信息交互的系统,该系统在Web端与客户端之间添加API抽象层,将Web端与客户端隔离开来,作为本实施例的一种实施方式,该系统包括:Web端301、客户端302、API抽象层303;
API抽象层303,用于分别连通Web端301与客户端302;
Web端301与客户端302,分别用于通过API抽象层303进行信息交互。
作为本实施例的第二种实施方式,API抽象层303分别连通Web端301与客户端302,有以下四种实现方式:
一、API抽象层303,具体用于与客户端302连通,并且API抽象层303的子页面嵌入Web端301的应用页面;
二、API抽象层303,具体用于与客户端302连通,并且API抽象层303嵌入Web端301的应用页面;
三、API抽象层303,具体用于封装在客户端302,并且API抽象层303与Web端301连通;
四、客户端302,还用于载入两个子页面,两个子页面分别为Web端301的应用页面和抽象层的页面。
作为本实施例的第三种实施方式,Web端301与客户端302通过API抽象层303进行信息交互,至少有以下两种实现方式:
一、API调用流程:
Web端301,具体用于通过API抽象层303提供的API接口,向API抽象层303发送API调用请求;
API抽象层303,具体用于对API调用请求进行权限验证,如果验证通过,将API调用请求的格式转换为客户端302的格式,对转换后的API调用请求附加安全验证,通过客户端302提供的API接口,向客户端302发送附加安全验证的API调用请求;
客户端302,具体用于如果通过安全验证,对API调用请求进行相应的响应。
二、事件响应流程:
API抽象层303,还用于通过客户端302提供的事件接口,通知客户端302需要回调的响应事件;
客户端302,具体用于通过事件回调函数,将需要回调的响应事件发送给API抽象层303;
API抽象层303,具体用于对响应事件进行权限验证,如果验证通过,判断响应事件是否需要回调,如果需要回调,将响应事件转换为Web端301的格式,并发送给Web端301。
在上述各实施方式中,信息交互的数据类型为字符串。
本实施例提供的系统,其所涉及的Web端、客户端、API抽象层,与方法实施例属于同一构思,其具体实现过程详见方法实施例,这里不再赘述。
本实施例通过构建API抽象层,API抽象层分别连通Web端与客户端,Web端与客户端通过API抽象层进行信息交互,Web端与客户端没有直接交互,Web端无法直接调用客户端接口,保障了客户端的安全稳定;并且,由于API抽象层的存在,Web端与客户端任何一方的变更不会直接影响到对端,同一套API在只做少量改动的前提下可以同时兼容多个环境或平台,如Windows、Mac、Linux或移动端等,具有良好的灵活性、兼容性和可扩展性。此外,API抽象层可直接发布,无需用户升级应用程序,易于运维。
实施例3
参见图7,本实施例提供了一种信息交互的方法,该方法包括:
401:构建API抽象层,API抽象层分别连通Web端与客户端;
402:Web端通过API抽象层对客户端进行API调用。
其中,步骤401中的API抽象层分别连通Web端与客户端,具体可以有以下四种实现方案:
一、API抽象层与客户端连通,并且API抽象层的子页面嵌入Web端的应用页面;
其中,API抽象层的子页面也即API抽象层的IFrame。
其中,客户端可以是浏览器。利用浏览器本身的跨域保护机制(或者叫同源策略),使Web端的应用页面无法直接访问客户端,从而达到限制Web端的应用页面的调用客户端API的目的。
二、页面内方案:API抽象层与客户端连通,并且API抽象层嵌入Web端的应用页面;
页面内方案能够保证版本兼容性和灵活性,但是安全性比第一种方案差,因为Web端的应用可以修改API抽象层,并且由于缺少同源策略的保护,应用甚至可以直接获取到应用承载者(如开放平台)的关键数据,造成用户隐私的泄漏。
三、页面外方案:API抽象层封装在客户端,并且API抽象层与Web端连通;
页面外方案由于依赖客户端的实现,因此移植难度较大,迁移成本极高。
四、子页面隐藏方案:客户端载入两个子页面,两个子页面分别为Web端的应用页面和抽象层的页面。
其中,抽象层的页面对用户不可见,因此,称为子页面隐藏方案。
其中,步骤402中的Web端通过API抽象层对客户端进行API调用,至少包括以下两种方案:
第一种:
Web端通过API抽象层提供的API接口,向API抽象层发送API调用请求;
API抽象层对API调用请求进行权限验证,如果验证通过,将API调用请求的格式转换为客户端的格式,对转换后的API调用请求附加安全验证,通过客户端提供的API接口,向客户端发送附加安全验证的API调用请求;
客户端如果通过安全验证,对API调用请求进行相应的响应。
第二种:
API抽象层通过客户端提供的事件接口,通知客户端需要回调的响应事件;
客户端通过事件回调函数,将需要回调的响应事件发送给API抽象层;
API抽象层对响应事件进行权限验证,如果验证通过,判断响应事件是否需要回调,如果需要回调,将响应事件转换为Web端的格式,并发送给Web端。
进一步的,步骤402中的API调用的数据类型为字符串。
本实施例通过构建API抽象层,API抽象层分别连通Web端与客户端,Web端通过API抽象层对客户端进行API调用,,Web端无法直接调用客户端接口,保障了客户端的安全稳定;并且,由于API抽象层的存在,Web端与客户端任何一方的变更不会直接影响到对端,同一套API在只做少量改动的前提下可以同时兼容多个环境或平台,如Windows、Mac、Linux或移动端等,具有良好的灵活性、兼容性和可扩展性。此外,API抽象层可直接发布,无需用户升级应用程序,易于运维。
本领域普通技术人员可以理解实现上述实施例的全部或部分步骤可以通过硬件来完成,也可以通过程序来指令相关的硬件完成,所述的程序可以存储于一种计算机可读存储介质中,上述提到的存储介质可以是只读存储器,磁盘或光盘等。
以上所述仅为本发明的较佳实施例,并不用以限制本发明,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
Claims (15)
1.一种信息交互的方法,其特征在于,所述方法包括:
构建API抽象层,所述API抽象层分别连通Web端与客户端;
所述Web端与所述客户端通过所述API抽象层进行信息交互。
2.根据权利要求1所述的方法,其特征在于,所述API抽象层分别连通Web端与客户端,具体包括:
所述API抽象层与所述客户端连通,并且所述API抽象层的子页面中嵌入所述Web端的应用页面;
或者,所述API抽象层与所述客户端连通,并且所述API抽象层嵌入所述Web端的应用页面;
或者,所述API抽象层封装在所述客户端,并且所述API抽象层与所述Web端连通;
或者,所述客户端载入两个子页面,所述两个子页面分别为所述Web端的应用页面和所述抽象层的页面。
3.根据权利要求1所述的方法,其特征在于,所述Web端与所述客户端通过所述API抽象层进行信息交互,具体包括:
所述Web端通过所述API抽象层提供的API接口,向所述API抽象层发送API调用请求;
所述API抽象层对所述API调用请求进行权限验证,如果验证通过,将所述API调用请求的格式转换为所述客户端的格式,对转换后的API调用请求附加安全验证,通过所述客户端提供的API接口,向所述客户端发送附加安全验证的API调用请求;
所述客户端如果通过安全验证,对所述API调用请求进行相应的响应。
4.根据权利要求1所述的方法,其特征在于,所述Web端与所述客户端通过所述API抽象层进行信息交互,具体包括:
所述API抽象层通过所述客户端提供的事件接口,通知所述客户端需要回调的响应事件;
所述客户端通过事件回调函数,将需要回调的响应事件发送给所述API抽象层;
所述API抽象层对响应事件进行权限验证,如果验证通过,判断响应事件是否需要回调,如果需要回调,将响应事件转换为所述Web端的格式,并发送给所述Web端。
5.根据权利要求1所述的方法,其特征在于,信息交互的数据类型为字符串。
6.一种信息交互的系统,其特征在于,所述系统包括:Web端、客户端、API抽象层;
所述API抽象层,用于分别连通Web端与客户端;
所述Web端与所述客户端,分别用于通过所述API抽象层进行信息交互。
7.根据权利要求6所述的系统,其特征在于,
所述API抽象层,具体用于与所述客户端连通,并且所述API抽象层的子页面中嵌入所述Web端的应用页面;
或者,所述API抽象层,具体用于与所述客户端连通,并且所述API抽象层嵌入所述Web端的应用页面;
或者,所述API抽象层,具体用于封装在所述客户端,并且所述API抽象层与所述Web端连通;
或者,所述客户端,还用于载入两个子页面,所述两个子页面分别为所述Web端的应用页面和所述抽象层的页面。
8.根据权利要求6所述的系统,其特征在于,
所述Web端,具体用于通过所述API抽象层提供的API接口,向所述API抽象层发送API调用请求;
所述API抽象层,具体用于对所述API调用请求进行权限验证,如果验证通过,将所述API调用请求的格式转换为所述客户端的格式,对转换后的API调用请求附加安全验证,通过所述客户端提供的API接口,向所述客户端发送附加安全验证的API调用请求;
所述客户端,具体用于如果通过安全验证,对所述API调用请求进行相应的响应。
9.根据权利要求6所述的系统,其特征在于,
所述API抽象层,还用于通过所述客户端提供的事件接口,通知所述客户端需要回调的响应事件;
所述客户端,具体用于通过事件回调函数,将需要回调的响应事件发送给所述API抽象层;
所述API抽象层,具体用于对响应事件进行权限验证,如果验证通过,判断响应事件是否需要回调,如果需要回调,将响应事件转换为所述Web端的格式,并发送给所述Web端。
10.根据权利要求6所述的系统,其特征在于,信息交互的数据类型为字符串。
11.一种信息交互的方法,其特征在于,所述方法包括:
构建API抽象层,所述API抽象层分别连通Web端与客户端;
所述Web端通过所述API抽象层对所述客户端进行API调用。
12.根据权利要求11所述的方法,其特征在于,所述API抽象层分别连通Web端与客户端,具体包括:
所述API抽象层与所述客户端连通,并且所述API抽象层的子页面中嵌入所述Web端的应用页面;
或者,所述API抽象层与所述客户端连通,并且所述API抽象层嵌入所述Web端的应用页面;
或者,所述API抽象层封装在所述客户端,并且所述API抽象层与所述Web端连通;
或者,所述客户端载入两个子页面,所述两个子页面分别为所述Web端的应用页面和所述抽象层的页面。
13.根据权利要求11所述的方法,其特征在于,所述Web端通过所述API抽象层对所述客户端进行API调用,具体包括:
所述Web端通过所述API抽象层提供的API接口,向所述API抽象层发送API调用请求;
所述API抽象层对所述API调用请求进行权限验证,如果验证通过,将所述API调用请求的格式转换为所述客户端的格式,对转换后的API调用请求附加安全验证,通过所述客户端提供的API接口,向所述客户端发送附加安全验证的API调用请求;
所述客户端如果通过安全验证,对所述API调用请求进行相应的响应。
14.根据权利要求11所述的方法,其特征在于,所述Web端通过所述API抽象层对所述客户端进行API调用,具体包括:
所述API抽象层通过所述客户端提供的事件接口,通知所述客户端需要回调的响应事件;
所述客户端通过事件回调函数,将需要回调的响应事件发送给所述API抽象层;
所述API抽象层对响应事件进行权限验证,如果验证通过,判断响应事件是否需要回调,如果需要回调,将响应事件转换为所述Web端的格式,并发送给所述Web端。
15.根据权利要求11所述的方法,其特征在于,API调用的数据类型为字符串。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201110439626.9A CN103177028B (zh) | 2011-12-23 | 2011-12-23 | 一种信息交互的方法和系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201110439626.9A CN103177028B (zh) | 2011-12-23 | 2011-12-23 | 一种信息交互的方法和系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN103177028A true CN103177028A (zh) | 2013-06-26 |
CN103177028B CN103177028B (zh) | 2017-08-01 |
Family
ID=48636909
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201110439626.9A Active CN103177028B (zh) | 2011-12-23 | 2011-12-23 | 一种信息交互的方法和系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN103177028B (zh) |
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103532959A (zh) * | 2013-10-21 | 2014-01-22 | 济南政和科技有限公司 | 一种跨平台网络通信方法 |
CN104077179A (zh) * | 2014-06-16 | 2014-10-01 | 武汉理工大学 | 一种面向Web浏览器的本地API调用方法 |
CN104380661A (zh) * | 2014-06-23 | 2015-02-25 | 华为技术有限公司 | 一种路由设备的操作方法、路由设备和终端设备 |
CN105607895A (zh) * | 2014-11-21 | 2016-05-25 | 阿里巴巴集团控股有限公司 | 一种基于应用程序编程接口的应用程序的运行方法和装置 |
CN110213290A (zh) * | 2019-06-14 | 2019-09-06 | 无锡华云数据技术服务有限公司 | 数据获取方法、api网关以及存储介质 |
CN111226429A (zh) * | 2018-09-21 | 2020-06-02 | 思杰系统有限公司 | 经由嵌入式浏览器拦截和增强saas应用调用的系统和方法 |
CN112148450A (zh) * | 2020-09-25 | 2020-12-29 | 北京聪明核桃教育科技有限公司 | 数据处理方法、装置、设备和存储介质 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101411146A (zh) * | 2006-05-31 | 2009-04-15 | 三星电子株式会社 | 使用脚本插件在异种装置上进行异种服务的方法 |
US20100281107A1 (en) * | 2009-05-01 | 2010-11-04 | Fallows John R | Enterprise client-server system and methods of providing web application support through distributed emulation of websocket communications |
US20110154130A1 (en) * | 2009-12-22 | 2011-06-23 | Nokia Corporation | Method and apparatus for secure cross-site scripting |
CN102129387A (zh) * | 2011-03-01 | 2011-07-20 | 云浮南风数字科技有限公司 | 通过机顶盒实现移动终端互联的系统及方法 |
CN102281311A (zh) * | 2010-06-10 | 2011-12-14 | 阿里巴巴集团控股有限公司 | 一种基于开放应用编程接口实现网络业务的方法、系统及装置 |
-
2011
- 2011-12-23 CN CN201110439626.9A patent/CN103177028B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101411146A (zh) * | 2006-05-31 | 2009-04-15 | 三星电子株式会社 | 使用脚本插件在异种装置上进行异种服务的方法 |
US20100281107A1 (en) * | 2009-05-01 | 2010-11-04 | Fallows John R | Enterprise client-server system and methods of providing web application support through distributed emulation of websocket communications |
US20110154130A1 (en) * | 2009-12-22 | 2011-06-23 | Nokia Corporation | Method and apparatus for secure cross-site scripting |
CN102281311A (zh) * | 2010-06-10 | 2011-12-14 | 阿里巴巴集团控股有限公司 | 一种基于开放应用编程接口实现网络业务的方法、系统及装置 |
CN102129387A (zh) * | 2011-03-01 | 2011-07-20 | 云浮南风数字科技有限公司 | 通过机顶盒实现移动终端互联的系统及方法 |
Cited By (16)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103532959A (zh) * | 2013-10-21 | 2014-01-22 | 济南政和科技有限公司 | 一种跨平台网络通信方法 |
CN104077179A (zh) * | 2014-06-16 | 2014-10-01 | 武汉理工大学 | 一种面向Web浏览器的本地API调用方法 |
CN104077179B (zh) * | 2014-06-16 | 2017-06-06 | 武汉理工大学 | 一种面向Web浏览器的本地API调用方法 |
US10417061B2 (en) | 2014-06-23 | 2019-09-17 | Huawei Technologies Co., Ltd. | Operating method of routing device, routing device, and terminal device |
CN104380661A (zh) * | 2014-06-23 | 2015-02-25 | 华为技术有限公司 | 一种路由设备的操作方法、路由设备和终端设备 |
WO2015196330A1 (zh) * | 2014-06-23 | 2015-12-30 | 华为技术有限公司 | 一种路由设备的操作方法、路由设备和终端设备 |
CN110049012B (zh) * | 2014-06-23 | 2022-01-18 | 华为技术有限公司 | 一种路由设备的操作方法、路由设备和终端设备 |
CN104380661B (zh) * | 2014-06-23 | 2019-03-26 | 华为技术有限公司 | 一种路由设备的操作方法、路由设备和终端设备 |
CN110049012A (zh) * | 2014-06-23 | 2019-07-23 | 华为技术有限公司 | 一种路由设备的操作方法、路由设备和终端设备 |
CN105607895B (zh) * | 2014-11-21 | 2021-03-02 | 阿里巴巴集团控股有限公司 | 一种基于应用程序编程接口的应用程序的运行方法和装置 |
CN105607895A (zh) * | 2014-11-21 | 2016-05-25 | 阿里巴巴集团控股有限公司 | 一种基于应用程序编程接口的应用程序的运行方法和装置 |
CN111226429A (zh) * | 2018-09-21 | 2020-06-02 | 思杰系统有限公司 | 经由嵌入式浏览器拦截和增强saas应用调用的系统和方法 |
CN111226429B (zh) * | 2018-09-21 | 2022-11-15 | 思杰系统有限公司 | 经由嵌入式浏览器拦截和增强saas应用调用的系统和方法 |
US11669376B2 (en) | 2018-09-21 | 2023-06-06 | Citrix Systems, Inc. | Systems and methods for intercepting and enhancing SaaS application calls via embedded browser |
CN110213290A (zh) * | 2019-06-14 | 2019-09-06 | 无锡华云数据技术服务有限公司 | 数据获取方法、api网关以及存储介质 |
CN112148450A (zh) * | 2020-09-25 | 2020-12-29 | 北京聪明核桃教育科技有限公司 | 数据处理方法、装置、设备和存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN103177028B (zh) | 2017-08-01 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN103177028A (zh) | 一种信息交互的方法和系统 | |
CN106657370B (zh) | 数据传输方法及装置 | |
CN103167031B (zh) | Web应用之间的通信的方法、设备与系统 | |
CN102833323A (zh) | 服务器远程控制受控终端的方法和系统 | |
CN100479389C (zh) | 实现设备访问接口的模块和方法、设备访问系统和方法 | |
WO2007044972A3 (en) | Message intercept methods, such as for customer self-support on a mobile device | |
JP2009506717A (ja) | 拡張可能な機能セットを有する可搬型遠隔装置 | |
KR20130114699A (ko) | 술어를 사용한 동적 장치 구성 | |
CN102109959A (zh) | 屏幕旋转时java应用程序界面跟随旋转的方法 | |
CN102821161A (zh) | 一种网络安全审计方法、装置及系统 | |
US20170171496A1 (en) | Method and Electronic Device for Screen Projection | |
CN102083244A (zh) | 一种基于嵌入式虚拟机方式的移动增值业务系统 | |
CN103533038A (zh) | 一种基于html5的远程控制系统及其远程控制方法 | |
CN101860549A (zh) | 一种Web Service下访问会话数据处理方法及装置 | |
CN105530277A (zh) | 一种设备间协同工作的方法及设备 | |
CN103345855B (zh) | 一种用于教学的投影切换系统和投影切换方法 | |
US20130059613A1 (en) | System and method for providing end to end interactive mobile applications using sms | |
CN102184076B (zh) | 一种针对java程序的移动终端输入控制方法和装置 | |
CN104426895A (zh) | 信息处理方法以及终端设备 | |
CN102301327A (zh) | 一种widget通信方法及服务器 | |
CN108733495A (zh) | 用于实现跨平台通信的方法和设备 | |
CN105429867A (zh) | 一种融合型家庭网关及其应用服务的访问方法 | |
CN102136954A (zh) | 一种基于网页实现的网络流量监控方法及系统 | |
CN116233209A (zh) | 一种gpu云渲染服务远程管理调度方法 | |
CN107888631A (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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |