CN117857254A - 跨网通信方法、系统及存储介质 - Google Patents
跨网通信方法、系统及存储介质 Download PDFInfo
- Publication number
- CN117857254A CN117857254A CN202311686575.9A CN202311686575A CN117857254A CN 117857254 A CN117857254 A CN 117857254A CN 202311686575 A CN202311686575 A CN 202311686575A CN 117857254 A CN117857254 A CN 117857254A
- Authority
- CN
- China
- Prior art keywords
- cross
- network component
- network
- client
- service interface
- 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.)
- Pending
Links
- 238000004891 communication Methods 0.000 title claims abstract description 78
- 238000000034 method Methods 0.000 title claims abstract description 47
- 230000000977 initiatory effect Effects 0.000 claims description 10
- 230000009466 transformation Effects 0.000 abstract description 10
- 230000007246 mechanism Effects 0.000 abstract description 6
- 230000005540 biological transmission Effects 0.000 description 7
- 238000010586 diagram Methods 0.000 description 6
- 230000008569 process Effects 0.000 description 6
- 238000012546 transfer Methods 0.000 description 5
- 230000003993 interaction Effects 0.000 description 4
- 230000002457 bidirectional effect Effects 0.000 description 3
- 238000006243 chemical reaction Methods 0.000 description 3
- 230000004048 modification Effects 0.000 description 3
- 238000012986 modification Methods 0.000 description 3
- 238000012545 processing Methods 0.000 description 3
- 230000006978 adaptation Effects 0.000 description 2
- 230000006872 improvement Effects 0.000 description 2
- 210000001503 joint Anatomy 0.000 description 2
- 238000003032 molecular docking Methods 0.000 description 2
- 230000006399 behavior Effects 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 238000012423 maintenance Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
Landscapes
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本发明涉及通信技术领域,公开了一种跨网通信方法、系统及存储介质,该方法应用于部署有第一跨网组件和第二跨网组件的API网关,该方法包括:在第一跨网组件接收到客户端的连接请求时,将连接请求转换为服务接口调用方式;在第二跨网组件基于所述服务接口调用方式与所述第一跨网组件完成连接时,建立客户端与目标服务端的连接关系;接收客户端的协议数据,并通过建立的连接关系将协议数据发送至所述目标服务端。由于本发明中部署有跨网组件,能够支持客户端跨API网关建立与目标服务端的通信连接,无需对应用的客户端及服务端进行通信机制的改造,有利于降低改造成本,提高改造效率。
Description
技术领域
本发明涉及通信技术领域,尤其涉及一种跨网通信方法、系统及存储介质。
背景技术
在政务网络中,作为内部网络的办公专网和外部互联网之间通常采用例如网闸或是API网关等跨网交换设备进行隔离。而出于政务行业对网络安全性要求的提高,目前有使用API网关替代网闸对接的趋势。
然而,由于API网关采用接口调用方式,一些不支持接口调用的应用在进行跨网通信前,需要分别进行通信机制的改造,进而耗费大量工作量。
上述内容仅用于辅助理解本发明的技术方案,并不代表承认上述内容是相关技术。
发明内容
本发明的主要目的在于提供了一种跨网通信方法、系统及存储介质,旨在解决现有的应用在基于跨网交换设备实现跨网通信时,由于不支持接口调用需要分别进行通信机制的改造,耗费大量工作量的技术问题。
为实现上述目的,本发明提供了一种跨网通信方法,所述方法应用于API网关,所述API网关上部署有第一跨网组件和第二跨网组件,所述方法包括以下步骤:
在所述第一跨网组件接收到客户端的连接请求时,将所述连接请求转换为服务接口调用方式;
在所述第二跨网组件基于所述服务接口调用方式与所述第一跨网组件完成连接时,建立所述客户端与目标服务端的连接关系;
接收所述客户端的协议数据,并通过建立的连接关系将所述协议数据发送至所述目标服务端。
可选地,所述在所述第二跨网组件基于所述服务接口调用方式与所述第一跨网组件完成连接时,建立所述客户端与目标服务端的连接关系,包括:
向所述第二跨网组件发起服务接口调用,以使所述第二跨网组件向所述目标服务端发送所述连接请求;
在所述目标服务端向所述第二跨网组件反馈建立完成消息时,通过所述第一跨网组件向所述客户端返回建立完成消息,建立所述客户端与所述目标服务端的连接关系。
可选地,所述接收所述客户端的协议数据,并通过建立的连接关系将所述协议数据发送至所述目标服务端,包括:
在所述第一跨网组件接收并拆分所述客户端基于当前协议发送的协议数据时,根据经过拆分的所述协议数据获得接口参数;
根据所述接口参数确定目标服务接口,并基于所述目标服务接口连接所述第一跨网组件和第二跨网组件;
在所述第二跨网组件组装完成所述经过拆分的所述协议数据时,基于所述当前协议向所述目标服务端发送所述协议数据。
可选地,所述接收所述客户端的协议数据,并通过建立的连接关系将所述协议数据发送至所述目标服务端之后,包括:
在所述第一跨网组件接收到所述客户端的断连请求时,将所述断连请求转换为所述服务接口调用方式;
向所述第二跨网组件发起服务接口调用,以使所述第二跨网组件向所述目标服务端发送所述断连请求;
在所述目标服务端向所述第二跨网组件反馈断连完成消息时,通过所述第一跨网组件向所述客户端返回断连完成消息,断开建立的所述连接关系。
可选地,所述在所述第一跨网组件接收到客户端的连接请求时,将所述连接请求转换为服务接口调用方式,包括:
在所述第一跨网组件接收到客户端的连接请求并发起服务接口调用时,根据所述连接请求确定所述客户端的目标网络标识;
基于所述目标网络标识确定目标网络,并生成对应所述目标网络的第二跨网组件的服务接口调用方式。
此外,为实现上述目的,本发明还提出一种跨网通信系统,所述系统包括外部网络、API网关以及本地网络;
所述API网关上部署有位于所述外部网络的第一跨网组件和位于所述本地网络的第二跨网组件;
所述第一跨网组件,用于接收所述外部网络中的客户端发送的连接请求,并将所述连接请求转化为对所述API网关的服务接口调用;
所述API网关,用于在接收到所述第一跨网组件的服务接口调用时,对所述第二跨网组件发起服务接口调用;
所述第二跨网组件,用于在接收到所述API网关的服务接口调用时,向所述本地网络中的目标服务端发送连接请求。
可选地,所述第二跨网组件,还用于接收所述目标服务端返回的建立完成消息,并向所述API网关返回接口调用完成消息;
所述API网关,还用于在接收到所述接口调用完成消息时,将所述接口调用完成消息返回至所述第一跨网组件;
所述第一跨网组件,还用于在接收到所述接口调用完成消息时,向所述客户端返回建立完成消息,建立所述客户端与所述目标服务端的连接关系。
可选地,第一跨网组件,还用于接收所述客户端基于当前协议发送的协议数据,并将所述协议数据进行拆分;
所述第一跨网组件,还用于根据拆分后的所述协议数据获得接口参数,对所述API网关进行目标服务接口的调用;
所述API网关,还用于在所述第一跨网组件进行所述目标服务接口的调用时,对所述第二跨网组件进行目标服务接口的调用,连接所述第一跨网组件和第二跨网组件;
所述API网关,还用于将拆分后的所述协议数据传递至所述第二跨网组件;
所述第二跨网组件,还用于对经过拆分的所述协议数据进行组装,并将组装完成的所述协议数据基于所述当前协议发送至所述目标服务端。
可选地,所述第一跨网组件,还用于接收所述客户端发送的断连请求,并将所述断连请求转化为对所述API网关的服务接口调用;
所述API网关,用于在接收到所述第一跨网组件的服务接口调用时,对所述第二跨网组件发起服务接口调用;
所述第二跨网组件,用于在接收到所述API网关的服务接口调用时,向所述目标服务端发送断连请求。
此外,为实现上述目的,本发明还提出一种存储介质,所述存储介质上存储有跨网通信方法程序,所述跨网通信方法程序被处理器执行时实现如上文所述的跨网通信方法。
本发明跨网通信方法中在API网关上部署有第一跨网组件和第二跨网组件,通过在所述第一跨网组件接收到客户端的连接请求时,将所述连接请求转换为服务接口调用方式;在所述第二跨网组件基于所述服务接口调用方式与所述第一跨网组件完成连接时,建立所述客户端与目标服务端的连接关系;接收所述客户端的协议数据,并通过建立的连接关系将所述协议数据发送至所述目标服务端。由于本发明中部署有跨网组件,能够支持客户端跨API网关建立与目标服务端的通信连接,无需对应用的客户端及服务端进行通信机制的改造,有利于降低改造成本,提高改造效率。
附图说明
图1为本发明跨网通信方法第一实施例的流程示意图;
图2为本发明跨网通信方法第一实施例中跨网通信方法的原理框图;
图3为本发明跨网通信方法第二实施例的流程示意图;
图4为本发明跨网通信系统第一实施例的架构示意图;
图5为本发明跨网通信系统中基于API网关实现应用跨网数据交换的全流程示意图。
本发明目的的实现、功能特点及优点将结合实施例,参照附图做进一步说明。
具体实施方式
应当理解,此处所描述的具体实施例仅用以解释本发明,并不用于限定本发明。
本发明实施例提供了一种跨网通信方法,参照图1,图1为本发明跨网通信方法第一实施例的流程示意图。
本实施例中,所述跨网通信方法应用于API网关,所述API网关上部署有第一跨网组件和第二跨网组件,所述方法包括以下步骤:
步骤S10:在所述第一跨网组件接收到客户端的连接请求时,将所述连接请求转换为服务接口调用方式。
需要说明的是,本实施例的执行主体可以是用于隔离不同网络的跨网交换设备,例如程序接口(Application Programming Interface,API)网关即API网关。该API网关可以将本地网络和外部网络进行隔离。其中本地网络可以为一种私有化部署的网络,例如政务专网或是办公内网等,本地网络可以通过本实施例中提供的跨网通信方法与其他一个或多个外部网络进行通信数据交换。
需要说明的是,传统的跨网交换设备中可以采用网闸,通过在本地网络和外部网络间开通跨防火墙通道的方式,以端口代理的形式直接进行数据交换。但考虑到本地网络对安全性要求的提高,需要在数据交换时保证数据安全和信息安全,因此,通常采用基于API网关的方式进行跨网通信。
应该理解的是,在执行本实施例之前,需要在API网关上部署分别位于外部网络和本地网络的第一跨网组件和第二跨网组件,该第一跨网组件和第二跨网组件可以为相同的通用跨网组件。
可以理解的是,API网关是一个中间层服务,可以提供一组API接口用来对支持采用接口调用的应用的客户端的请求直接进行处理、转发和管理。由于可以存在支持非接口调用的应用的客户端,这些支持非接口调用的应用的客户端可以通过上述通用跨网组件实现对API网关的接口调用,进而实现与目标服务端的数据交换,满足应用需求。
应该理解的是,上述通用跨网组件可以分别部署于API网关的两侧后,该通用跨网组件与API网关的组合可以视为支持协议的代理服务。应用的客户端可以基于该代理服务实现跨API网关与应用的目标服务端的通信数据传输。
还需说明的是,位于外部网络中的各个应用的客户端可以集成在某一虚拟工作台上,该虚拟工作台上的各个应用可以基于上述第一跨网组件实现与API网关的连接,进而实现跨网数据交换接口的统一,减少了存在多个需要进行跨网通信的应用的对接成本。
应该理解的是,由于客户端需要进行的数据交互可以是由客户端所在网络内部进行通信,还可以是跨网通信。因此可以首先判断客户端是否存在跨网需求,接着在客户端需要进行本地网络至外地网络的数据交互行为即该客户端存在跨网需求时,将根据跨网需求生成的连接请求发送至该第一跨网组件,建立客户端到第一跨网组件的连接。
进一步地,考虑到客户端需要进数据交换的目标网络可以为一个或多个,可以先确定目标网络的网络标识进而确定部署在API网关上需要建立连接的第二跨网组件所处于的本地网络,因此,步骤S10,包括:
步骤S101:在所述第一跨网组件接收到客户端的连接请求并发起服务接口调用时,根据所述连接请求确定所述客户端的目标网络标识。
步骤S102:基于所述目标网络标识确定目标网络,并生成对应所述目标网络的第二跨网组件的服务接口调用方式。
应该理解的是,该目标网络标识可以是用来区分应用的客户端需要请求的目标服务端所在网络的唯一标识。通过对客户端的连接请求进行数据解析,能够提取到客户端需要建立连接的目标服务端所在网络的标识,确定API网关上的第二跨网组件所在的目标网络。接着在确定了第二跨网组件后,API网关可以对第二跨网组件发起目服务接口调用。
在具体实现中,第一跨网组件在接收到客户端发送的连接请求后,可以将该连接请求转化为对API网关的服务接口调用,接着在确定了目标网络即确定了第二跨网组件后,API网关对该第二跨网组件发起服务接口调用。
步骤S20:在所述第二跨网组件基于所述服务接口调用方式与所述第一跨网组件完成连接时,建立所述客户端与目标服务端的连接关系。
需要说明的是,该目标服务端可以为上述连接请求中客户端需要进行数据交换的本地网络中的一个或多个服务器,该服务器可以为对客户端提供不同服务的系统,例如移动安全认证服务等,还可以为接收客户端消息推送的互联网终端,例如在外部网络中的移动端和PC端等。
应该理解的是,在API网关对第二跨网组件发起服务接口调用后,第二跨网组件可以将连接请求发送至目标服务端,使得目标服务端在接收到源自客户端的连接请求并建立连接成功后,将建立连接成功消息返回至客户端,建立应用的客户端与目标服务端的的连接关系。
在具体实现中,API网关可以向所述第二跨网组件发起服务接口调用,以使所述第二跨网组件向所述目标服务端发送所述连接请求,在API网关对第二跨网组件发起服务接口调用后,接着第二跨网组件可以将连接请求发送至目标服务端,在所述目标服务端向所述第二跨网组件反馈建立完成消息时,第二跨网组件可以通过所述第一跨网组件向所述客户端返回建立完成消息,建立所述客户端与所述目标服务端的连接关系。
步骤S30:接收所述客户端的协议数据,并通过建立的连接关系将所述协议数据发送至所述目标服务端。
应该理解的是,不同应用的客户端和目标服务端可以采用不同类型和不同版本的协议,为了实现外部网络到本地网络的通信数据交换过程中协议的兼容性和互操作性,使不同协议之间能够进行有效的通信,可以对客户端支持的协议进行转换。考虑到应用支持的协议可以为企业私有协议,该企业私有协议难以通过API网关直接进行协议转化,因此,该通用跨网组件可以为一个长连接协议代理,例如可以为超文本传输(HyperTextTransfer Protocol,HTTP)协议或在HTTP下加SSL层的HTTPS协议的代理,使得API网关可以传载该通用的长连接协议,保证了传输协议的一致性。
需要说明的是,可以先确定应用支持的协议类型,生成对应支持协议类型的协议数据,并将该协议数据发送至第一跨网组件,使得第一跨网组件可以基于通用的长连接协议,实现对客户端的协议代理以及协议数据的后续传输。
进一步地,在连接建立完成后,客户端可以基于该建立的连接与目标服务端进行数据传输,因此,步骤S30,包括:
步骤S301:在所述第一跨网组件接收并拆分所述客户端基于当前协议发送的协议数据时,根据经过拆分的所述协议数据获得接口参数。
步骤S302:根据所述接口参数确定目标服务接口,并基于所述目标服务接口连接所述第一跨网组件和第二跨网组件。
步骤S303:在所述第二跨网组件组装完成所述经过拆分的所述协议数据时,基于所述当前协议向所述目标服务端发送所述协议数据。
在具体实现中,第一跨网组件可以基于上述通用的长连接协议,在接收到客户端发送的协议数据后,首先将该协议数据拆分;接着将拆分的数据作为接口参数,根据该接口参数对API网关进行服务接口调用;进而API网关对第二跨网组件进行接口调用,并传递拆分的协议数据;第二跨网组件对拆分的协议数据进行组装,再向目标服务端传递协议数据。
需要说明的是,在目标服务端需要向客户端进行数据传输时,可以采用与上述步骤相同的方式,本实施例在此不加以赘述。
此处可以参考图2进行说明,图2为本实施例跨网通信方法的原理框图。在图2中,在客户端为浏览器且浏览器中的应用网页(Web)页面需要进行跨网数据交换时,可以在浏览器中将第一跨网组件设置为Web代理,使得浏览器中的应用Web页面可以基于该第一跨网组件提供的HTTP/HTTPS代理实现跨网访问,可以与本地网络中的H5应用服务器进行数据交换,进而实现了浏览器HTTP/HTTPS协议跨网。
在图2中,在客户端为原生应用客户端时,若客户端中的HTTP/HTTPS组件需要进行跨网,则可以在HTTP/HTTPS组件中将第一跨网组件设置为Web代理,使得该HTTP/HTTPS组件可以基于该第一跨网组组件提供的HTTP/HTTPS代理实现跨网访问,进而实现了客户端HTTP/HTTPS协议跨网。
由于HTTP/HTTPS协议是建立在TCP协议之上,原生应用客户端如需跨网,可以对内部IO处理层进行改造,使客户端和目标服务端之间的协议可以通过该通用跨网组件提供的协议代理进行协议转换,进而实现跨网访问。
需要说明的是,考虑到客户端与目标服务端的通信数据交换可以是双向的,客户端与目标服务端的通信数据交换还可以是客户端接受来自目标服务端发送的业务数据。因此,基于建立的跨网连接,目标服务端可以通过采用与上述客户端向目标服务端发送协议数据相同的步骤,基于通用的跨网组件,实现内外网通信数据交换。
本实施例通过在API网关上部署有第一跨网组件和第二跨网组件,通过在所述第一跨网组件接收到客户端的连接请求时,将所述连接请求转换为服务接口调用方式;在所述第二跨网组件基于所述服务接口调用方式与所述第一跨网组件完成连接时,建立所述客户端与目标服务端的连接关系;接收所述客户端的协议数据,并通过建立的连接关系将所述协议数据发送至所述目标服务端。由于本实施例中API网关上两侧分别部署有位于外部网络和本地网络的通用跨网组件,可以支持应用的非接口调用方式跨网通信到接口调用方式跨网通信的转换适配,对内实现接口调用方式跨网通信,对外支持客户端以非接口调用方式进行跨网通信,将客户端与服务端的数据交互进行了接口的统一,无需对应用的客户端和服务端进行通信机制的改造,有利于减少应用中位于不同网络的客户端和服务端对接和改造成本,提高改造效率。
参考图3,图3为本发明跨网通信方法第二实施例的流程示意图。
基于上述实施例,在本实施例中,为了减少网络系统的开销,客户端在执行完当前的跨网数据交换任务后,可以断开上述建立的跨网连接,降低本地网络中的数据泄露风险,因此,步骤S30之后,包括:
步骤S401:在所述第一跨网组件接收到所述客户端的断连请求时,将所述断连请求转换为所述服务接口调用方式。
应该理解的是,上述该断连请求可以是客户端中基于用户指令发起的用于断开上述外部网络与本地网络的建立的连接的请求,还可以是在连接建立完成后的预设时间内不存在外部网络与本地网络之间的数据交换时自动生成的断连请求。
步骤S402:向所述第二跨网组件发起服务接口调用,以使所述第二跨网组件向所述目标服务端发送所述断连请求。
步骤S403:在所述目标服务端向所述第二跨网组件反馈断连完成消息时,通过所述第一跨网组件向所述客户端返回断连完成消息,断开建立的所述连接关系。
在具体实现中,上述断连步骤可以参考客户端发起连接请求并建立连接关系的过程进行。第一跨网组件在接收到客户端发送的断连请求时,首先将断连请求转换为对API网关的服务接口调用,接着API网关向第二跨网组件进行服务接口调用,第二跨网组件向目标服务端发起断连请求;在目标服务端断开连接成功后,将断连完成消息返回至第二跨网组件,使得第二跨网组件向客户端返回断连完成消息,断开上述建立的连接关系。
进一步地,考虑到客户端可以进行非跨网通信,还可以根据客户端的业务需求信息判断客户端需要进行的通信类型。步骤S10之前,还可以包括:
步骤A01:获取所述客户端的业务需求信息。
应该理解的是,该业务需求信息可以是客户端当前需要执行的业务类型,例如该业务需求信息可以为通讯业务信息,通讯业务信息可以分为跨网通讯业务和内部网络通讯业务。
步骤A02:根据所述客户端的业务需求信息判断所述客户端是否存在跨网需求。
在具体实现中,若该业务需求信息为通讯业务信息,则当该通讯业务信息为跨网通讯业务时,客户端存在跨网需求;当该通讯业务信息为内部网络通讯业务时,客户端不存在跨网需求。
步骤A03:在所述客户端不存在跨网需求时,确定所述客户端对应的本地数据接收端。
应该理解的是,该本地数据接收端可以为与所述应用的客户端处于同一虚拟工作台中的其他应用客户端或是对应所述客户端的同网服务端。该本地数据接收端与所述客户端由于处于同一网络,可以无需进行接口调用,直接进行内部网络中的数据交换。
步骤A04:将所述客户端的当前业务数据发送至所述本地数据接收端进行数据处理。
在具体实现中,在客户端不存在跨网需求时,客户端所需执行的业务无需进行跨网数据交换,客户端的当前业务数据可以直接发送至本地数据接收端,从而实现内部网络中的数据交换。
本实施中通过在所述第一跨网组件接收到所述客户端的断连请求时,将所述断连请求转换为所述服务接口调用方式;向所述第二跨网组件发起服务接口调用,以使所述第二跨网组件向所述目标服务端发送所述断连请求;在所述目标服务端向所述第二跨网组件反馈断连完成消息时,通过所述第一跨网组件向所述客户端返回断连完成消息,断开建立的所述连接关系。能够考虑到维护本地网络的数据安全性,在接收到客户端的断开连接请求后及时断开已建立的连接,降低本地网络中数据泄露的风险。
此外,本发明实施例还提出一种存储介质,所述存储介质上存储有跨网通信程序,所述跨网通信程序被处理器执行时实现如上文所述的跨网通信方法。
此外,参考图4,图4为本发明跨网通信系统第一实施例的架构示意图;本发明还提出一种跨网通信系统。
如图4所示,本发明实施例跨网通信系统,所述系统包括外部网络10、API网关20以及本地网络30;
所述API网关20上部署有位于所述外部网络10的第一跨网组件101和位于所述本地网络30的第二跨网组件301;
应该理解的是,所述外部网络10中还包括客户端102,所述外部网络中还包括目标服务端302;
所述第一跨网组件101,用于接收所述外部网络10中的客户端102发送的连接请求,并将所述连接请求转化为对所述API网关20的服务接口调用;
所述API网关20,用于在接收到所述第一跨网组件101的服务接口调用时,对所述第二跨网组件301发起服务接口调用;
所述第二跨网组件301,用于在接收到所述API网关20的服务接口调用时,向所述本地网络30中的目标服务端302发送连接请求。
进一步地,所述第二跨网组件301,还用于接收所述目标服务端302返回的建立完成消息,并向所述API网关20返回接口调用完成消息;
所述API网关20,还用于在接收到所述接口调用完成消息时,将所述接口调用完成消息返回至所述第一跨网组件101;
所述第一跨网组件101,还用于在接收到所述接口调用完成消息时,向所述客户端102返回建立完成消息,建立所述客户端102与所述目标服务端302的连接关系。
进一步地,所述第一跨网组件101,还用于接收所述客户端102基于当前协议发送的协议数据,并将所述协议数据进行拆分;
所述第一跨网组件101,还用于根据拆分后的所述协议数据获得接口参数,对所述API网关20进行目标服务接口的调用;
所述API网关20,还用于在所述第一跨网组件101进行所述目标服务接口的调用时,对所述第二跨网组件301进行目标服务接口的调用,连接所述第一跨网组件101和第二跨网组件301;
所述API网关20,还用于将拆分后的所述协议数据传递至所述第二跨网组件301;
所述第二跨网组件301,还用于对经过拆分的所述协议数据进行组装,并将组装完成的所述协议数据基于所述当前协议发送至所述目标服务端302。
此处可参考图5进行说明,图5为本发明跨网通信系统中基于API网关实现应用跨网数据交换的全流程示意图。
在图5中,跨网数据交换全流程可以分为建立连接、双向数据传输以及断开连接三个阶段。
在建立连接阶段中,客户端102向第一跨网组件101发送建立连接请求;第一跨网组件101将连接请求转换为对API网关20的服务接口调用;API网关20对第二跨网组件301进行服务接口调用;第二跨网组件301将建立连接请求发送至目标服务端302;目标服务端302在接收到建立连接请求并建立连接成功后,将建立连接完成信息发送至第二跨网组件301,使得第二跨网组件301向API网关20返回接口调用完成信息,进而API网关20向第一跨网组件101返回接口调用完成信息,第一跨网组件101在接收到接口调用完成信息时向客户端102反馈建立连接完成信息,从而建立了客户端102与目标服务端302的跨网连接。
在双向数据传输阶段中,由外部网络10向本地网络30发送数据时:客户端102向第一跨网组件101基于长连接协议(TCP/HTTP/HTTPS)发送协议数据;第一跨网组件101将接收到的协议数据拆分后,将拆分的数据作为接口参数,对API网关20进行服务接口调用;API网关20对另一侧的第二跨网组件302进行服务接口调用,传递拆分的协议数据;第二跨网组件302在接收到拆分的协议数据后组装协议数据,再基于相同的长连接协议向目标服务端302发送协议数据。
在双向数据传输阶段中,由本地网络30向外部网络10发送数据的具体流程可以参考上述步骤进行描述,本实施例在此不加以赘述。
在断开连接阶段中,客户端102向第一跨网组件101发送断开连接请求;第一跨网组件101将连接请求转换为对API网关20的服务接口调用;API网关20对第二跨网组件301进行服务接口调用;第二跨网组件301将断开连接请求发送至目标服务端302;目标服务端302在接收到断开连接请求并建立连接成功后,将断开连接完成信息发送至第二跨网组件301,使得第二跨网组件301向API网关20返回接口调用完成信息,进而API网关20向第一跨网组件101返回接口调用完成信息,第一跨网组件101在接收到接口调用完成信息时向客户端102反馈断开连接完成信息,从而断开了客户端102与目标服务端302建立的跨网连接。
本实施例中API网关上部署有位于外部网络的第一跨网组件和位于本地网络的第二跨网组件,可以支持应用的非接口调用方式跨网通信到接口调用方式跨网通信的转换适配,对内实现接口调用方式跨网通信,对外支持客户端以非接口调用方式进行跨网通信,将客户端与服务端的数据交互进行了接口的统一,无需对应用的客户端和服务端进行通信机制的改造,有利于减少应用中位于不同网络的客户端和服务端对接和改造成本,提高改造效率。
本发明基于API网关的跨网通信系统的各实施例或具体实现方式可参照上述各方法实施例,此处不再赘述。
需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者系统不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者系统所固有的要素。在没有更多限制的情况下,由语句“包括一个……限定”的要素,并不排除在包括该要素的过程、方法、物品或者系统中还存在另外的相同要素。
上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质(如只读存储器/随机存取存储器、磁碟、光盘)中,包括若干指令用以使得一台终端设备(可以是手机,计算机,服务器,或者网络设备等)执行本发明各个实施例所述的方法。
以上仅为本发明的优选实施例,并非因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本发明的专利保护范围内。
Claims (10)
1.一种跨网通信方法,其特征在于,所述方法应用于API网关,所述API网关上部署有第一跨网组件和第二跨网组件,所述方法包括:
在所述第一跨网组件接收到客户端的连接请求时,将所述连接请求转换为服务接口调用方式;
在所述第二跨网组件基于所述服务接口调用方式与所述第一跨网组件完成连接时,建立所述客户端与目标服务端的连接关系;
接收所述客户端的协议数据,并通过建立的连接关系将所述协议数据发送至所述目标服务端。
2.如权利要求1所述的跨网通信方法,其特征在于,所述在所述第二跨网组件基于所述服务接口调用方式与所述第一跨网组件完成连接时,建立所述客户端与目标服务端的连接关系,包括:
向所述第二跨网组件发起服务接口调用,以使所述第二跨网组件向所述目标服务端发送所述连接请求;
在所述目标服务端向所述第二跨网组件反馈建立完成消息时,通过所述第一跨网组件向所述客户端返回建立完成消息,建立所述客户端与所述目标服务端的连接关系。
3.如权利要求1所述的跨网通信方法,其特征在于,所述接收所述客户端的协议数据,并通过建立的连接关系将所述协议数据发送至所述目标服务端,包括:
在所述第一跨网组件接收并拆分所述客户端基于当前协议发送的协议数据时,根据经过拆分的所述协议数据获得接口参数;
根据所述接口参数确定目标服务接口,并基于所述目标服务接口连接所述第一跨网组件和第二跨网组件;
在所述第二跨网组件组装完成所述经过拆分的所述协议数据时,基于所述当前协议向所述目标服务端发送所述协议数据。
4.如权利要求1所述的跨网通信方法,其特征在于,所述接收所述客户端的协议数据,并通过建立的连接关系将所述协议数据发送至所述目标服务端之后,包括:
在所述第一跨网组件接收到所述客户端的断连请求时,将所述断连请求转换为所述服务接口调用方式;
向所述第二跨网组件发起服务接口调用,以使所述第二跨网组件向所述目标服务端发送所述断连请求;
在所述目标服务端向所述第二跨网组件反馈断连完成消息时,通过所述第一跨网组件向所述客户端返回断连完成消息,断开建立的所述连接关系。
5.如权利要求1所述的跨网通信方法,其特征在于,所述在所述第一跨网组件接收到客户端的连接请求时,将所述连接请求转换为服务接口调用方式,包括:
在所述第一跨网组件接收到客户端的连接请求并发起服务接口调用时,根据所述连接请求确定所述客户端的目标网络标识;
基于所述目标网络标识确定目标网络,并生成对应所述目标网络的第二跨网组件的服务接口调用方式。
6.一种跨网通信系统,其特征在于,所述系统包括外部网络、API网关以及本地网络;
所述API网关上部署有位于所述外部网络的第一跨网组件和位于所述本地网络的第二跨网组件;
所述第一跨网组件,用于接收所述外部网络中的客户端发送的连接请求,并将所述连接请求转化为对所述API网关的服务接口调用;
所述API网关,用于在接收到所述第一跨网组件的服务接口调用时,对所述第二跨网组件发起服务接口调用;
所述第二跨网组件,用于在接收到所述API网关的服务接口调用时,向所述本地网络中的目标服务端发送连接请求。
7.如权利要求6所述的跨网通信系统,其特征在于,所述第二跨网组件,还用于接收所述目标服务端返回的建立完成消息,并向所述API网关返回接口调用完成消息;
所述API网关,还用于在接收到所述接口调用完成消息时,将所述接口调用完成消息返回至所述第一跨网组件;
所述第一跨网组件,还用于在接收到所述接口调用完成消息时,向所述客户端返回建立完成消息,建立所述客户端与所述目标服务端的连接关系。
8.如权利要求6所述的跨网通信系统,其特征在于,所述第一跨网组件,还用于接收所述客户端基于当前协议发送的协议数据,并将所述协议数据进行拆分;
所述第一跨网组件,还用于根据拆分后的所述协议数据获得接口参数,对所述API网关进行目标服务接口的调用;
所述API网关,还用于在所述第一跨网组件进行所述目标服务接口的调用时,对所述第二跨网组件进行目标服务接口的调用,连接所述第一跨网组件和第二跨网组件;
所述API网关,还用于将拆分后的所述协议数据传递至所述第二跨网组件;
所述第二跨网组件,还用于对经过拆分的所述协议数据进行组装,并将组装完成的所述协议数据基于所述当前协议发送至所述目标服务端。
9.如权利要求6所述的跨网通信系统,其特征在于,所述第一跨网组件,还用于接收所述客户端发送的断连请求,并将所述断连请求转化为对所述API网关的服务接口调用;
所述API网关,用于在接收到所述第一跨网组件的服务接口调用时,对所述第二跨网组件发起服务接口调用;
所述第二跨网组件,用于在接收到所述API网关的服务接口调用时,向所述目标服务端发送断连请求。
10.一种存储介质,其特征在于,所述存储介质上存储有跨网通信程序,所述跨网通信程序被处理器执行时实现如权利要求1至5中任一项所述的跨网通信方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311686575.9A CN117857254A (zh) | 2023-12-08 | 2023-12-08 | 跨网通信方法、系统及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311686575.9A CN117857254A (zh) | 2023-12-08 | 2023-12-08 | 跨网通信方法、系统及存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN117857254A true CN117857254A (zh) | 2024-04-09 |
Family
ID=90531110
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202311686575.9A Pending CN117857254A (zh) | 2023-12-08 | 2023-12-08 | 跨网通信方法、系统及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN117857254A (zh) |
-
2023
- 2023-12-08 CN CN202311686575.9A patent/CN117857254A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US5966451A (en) | Distributed network computing system, and data exchange apparatus and method and storage medium used in this system | |
US7483437B1 (en) | Method of communicating packet multimedia to restricted endpoints | |
CN103188300B (zh) | 云计算环境中实现voip通话的方法、装置和系统 | |
US20070233844A1 (en) | Relay device and communication system | |
KR100585781B1 (ko) | 모바일 인스턴트 메시징 서비스의 파일 전송 방법 | |
EP1401169A1 (en) | Method and system using a Meta service selector for deploying services over a plurality of networks | |
EP2706728A1 (en) | Method and device for improving voice or video transmission quality in a cloud computing mode | |
US10367894B2 (en) | Information processing apparatus, method for controlling the same, non-transitory computer-readable storage medium, and information processing system | |
WO2011144080A2 (zh) | 一种通信的方法、系统及装置 | |
US20080071914A1 (en) | Session control system | |
JP2009146430A (ja) | ウェブブラウザに対する非同期メッセージのプッシュ | |
US9055088B2 (en) | Managing a communication session with improved session establishment | |
CN110278148B (zh) | 一种数据兼容性网关系统 | |
US20070058611A1 (en) | Method and system to proxy mobile and network originated call sessions | |
WO2022002069A1 (zh) | 访问网络的方法、媒体网关、电子设备及存储介质 | |
CN108882262A (zh) | 设备状态同步方法、系统、智能终端及可读存储介质 | |
US11102349B2 (en) | Method for automatic start up of a communication terminal configured for voice communication on a communication terminal configured for text communication | |
KR20050009926A (ko) | 이동 통신단말기의 무선 인터넷 동기화 방법 | |
CN117857254A (zh) | 跨网通信方法、系统及存储介质 | |
KR20090120401A (ko) | 음성/영상 통화 시스템 | |
EP0994616A2 (en) | Apparatus and method for providing enhanced supplementary services in telephony-over-lan-systems | |
US7613824B1 (en) | Method of using a web-browser to pass information from a first web-entity to one of a plurality of second web-entities | |
CN112202780A (zh) | 一种基于双套接字的数据传输方法、装置、设备及介质 | |
CN113726731A (zh) | 基于tcp实现终端app与服务器实时通讯的方法与系统 | |
JP3296354B2 (ja) | データ通信方法、クライアント、サーバ及び通信プログラムを記録した記録媒体 |
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 |