一种接口转换方法、装置、介质及计算机设备制造方法及图纸

技术编号:26178132 阅读:27 留言:0更新日期:2020-10-31 14:26
本文公开了一种接口转换方法、装置、介质及计算机设备,此方法包括:接收第一类型文件,根据所述第一类型文件的定义方式,逐层解析所述第一类型文件,获得目标接口的请求响应信息格式,确定包括所述请求响应信息格式的用于进行源接口至目标接口的格式转换的第一转换规则,生成第二类型接口和第二类型文件;接收针对第二类型接口的访问请求,代理服务器读取第一转换规则,根据与第一转换规则相逆的第二转换规则将所述访问请求进行转换后,发送至源服务端。本文可以在不改变服务端代码前提下降低客户端使用成本的方式对请求,响应方式全方位转换,提供简明的文档。

An interface conversion method, device, medium and computer equipment

【技术实现步骤摘要】
一种接口转换方法、装置、介质及计算机设备
本申请涉及但不限于互联网
,尤其涉及一种接口转换方法、装置、介质及计算机设备。
技术介绍
随着数字化产业的快速发展,应用程序接口(API,ApplicationProgramInterface)在企业中起到的作用越来越重要。API可以作为企业内部业务系统之间的桥梁,进行业务数据的交换、系统间的数据通道;也可以作为企业和合作伙伴之间的枢纽,进行数据的共享,还可以作为企业和用户之间的门户,将数据的读写权限通过API向用户开放。但由于业务系统开发架构、方式的不同,服务端需要以固定以soap请求和restful方式开放以方便客户端进行调用。针对上述技术问题,目前最常见的两种解决方案分别是:1、基于WCF服务同时开放rest和soap接口。2、使用市场上的API网关、ESB类型的产品,对API进行统一接入和管理。第一种方法的问题是同时在服务端暴露两种类型接口。这种方式的缺点包括三点,一:服务端之前可能只有soap服务接口或restful服务接口,这时想要提供另一种服务接口必须要更改服务端代码。二:自定义功能配置有限,对请求和返回形式进行更改以及权限的配置需要更改服务端代码,灵活度低。三:不会提供更便于相互沟通的swagger/wsdl文档。第二种方法的问题是功能有限,扩展性低。因为常见的API网关、ESB类型产品往往只提供soap服务接口转rest服务接口,而没有提供将rest接口转soap接口的方式,且不提供swagger文档和wsdl文档。
技术实现思路
为了解决上述技术问题,本专利技术提供一种接口转换方法、装置、介质及计算机设备。根据实施例的一个方面,提供了一种接口转换方法,包括:接收第一类型文件,根据所述第一类型文件的定义方式,逐层解析所述第一类型文件,获得目标接口的请求响应信息格式,确定包括所述请求响应信息格式的用于进行源接口至目标接口的格式转换的第一转换规则,生成第二类型接口和第二类型文件;接收针对第二类型接口的访问请求,代理服务器读取所述第一转换规则,根据与所述第一转换规则相逆的第二转换规则将所述访问请求进行转换后,发送至源服务端,将从所述源服务端接收到的响应信息转换为所述第一转换规则中的请求响应信息格式,向所述访问请求的发送方返回转换后的响应信息。上述接口转换方法还具有以下特点:所述第一类型文件是wsdl文件,所述第二类型文件是swagger文件,所述源接口是soap接口,所述目标接口是rest接口;所述第一类型文件是swagger文件,所述第二类型文件是wsdl文件,所述源接口是rest接口,所述目标接口是soap接口。上述接口转换方法还具有以下特点:在获得目标接口的请求响应信息格式之后,所述方法还包括:接受用户对所述请求响应信息格式的自定义配置。上述接口转换方法还具有以下特点:所述用户对所述请求响应信息格式的自定义配置包括:重新定义所述请求响应信息格式的参数的格式,将所述请求响应信息格式中的原参数的格式转换为重新定义后的参数的格式;所述将所述请求响应信息格式中的原参数的格式转换为重新定义后的参数的格式包括以下转换方式中的至少一种:url转换,请求头信息转换,响应头信息转换,参数转换。上述接口转换方法还具有以下特点:所述第一类型文件是wsdl文件,所述第二类型文件是swagger文件时,根据所述第一类型文件的定义方式,逐层解析所述第一类型文件,获得目标接口的请求响应信息格式包括:将wsdl文件分解为层次化结构,从定义属性中查找到soap业务属性,在soap业务属性中找到用于表示soap的端口项,根据端口项中绑定项中的内容找到定义属性中的绑定节点,根据绑定节点中的操作项找到定义属性中端口类型属性中的操作节点并记录方法名,根据此操作节点中的输入项找到对应的消息节点,在消息节点中的部分项找到对应的节点,以此节点为起点,执行下述循环处理,直至重回到此节点:此节点是元素节点时记录名称后继续解析下一节点,在此节点是复合节点时,到schema节点找到对应的复合节点,逐层解析子节点,忽略非元素或者复合节点;此节点是元素时记录名称后继续解析下一节点,在此节点是复合节点时,到schema节点找到对应的复合节点。根据实施例的另一个方面,提供了一种接口转换装置,包括:第一接收模块,用于接收第一类型文件;解析模块,用于根据所述第一类型文件的定义方式,逐层解析所述第一类型文件,获得目标接口的请求响应信息格式;生成模块,用于确定包括所述请求响应信息格式的用于进行源接口至目标接口的格式转换的第一转换规则,生成第二类型接口和第二类型文件;第二接收模块,用于接收针对第二类型接口的访问请求;读取模块,用于读取所述第一转换规则;转换模块,用于根据与所述第一转换规则相逆的第二转换规则将所述访问请求进行转换后;第一发送模块,用于将转换后的请求发送至源服务端;第三接收模块,用于从所述源服务端接收响应信息;所述转换模块,还用于将从所述源服务端接收响应信息转换为所述第一转换规则中的请求响应信息格式;第二发送模块,用于向所述访问请求的发送方返回转换后的响应信息。上述接口转换装置还具有以下特点:所述第一类型文件是wsdl文件,所述第二类型文件是swagger文件,所述源接口是soap接口,所述目标接口是rest接口;所述第一类型文件是swagger文件,所述第二类型文件是wsdl文件,所述源接口是rest接口,所述目标接口是soap接口。上述接口转换装置还具有以下特点:还包括:与所述解析模块相连接的配置接收模块,用于接受用户对所述请求响应信息格式的自定义配置。上述接口转换装置还具有以下特点:所述用户对所述请求响应信息格式的自定义配置包括:重新定义所述请求响应信息格式的参数的格式,将所述请求响应信息格式中的原参数的格式转换为重新定义后的参数的格式;所述将所述请求响应信息格式中的原参数的格式转换为重新定义后的参数的格式包括以下转换方式中的至少一种:url转换,请求头信息转换,响应头信息转换,参数转换。上述接口转换装置还具有以下特点:所述解析模块,还用于在所述第一类型文件是wsdl文件时,使用以下方法根据所述第一类型文件的定义方式,逐层解析所述第一类型文件,获得目标接口的请求响应信息格式:将wsdl文件分解为层次化结构,从定义属性中查找到soap业务属性,在soap业务属性中找到用于表示soap的端口项,根据端口项中绑定项中的内容找到定义属性中的绑定节点,根据绑定节点中的操作项找到定义属性中端口类型属性中的操作节点并记录方法名,根据此操作节点中的输入项找到对应的消息节点,在消息节点中的部分项找到对应的节点,以此节点为起点,执行下述循环处理,直至重回到此节点:此节点是元素节点时记录名称本文档来自技高网
...

【技术保护点】
1.一种接口转换方法,其特征在于,包括:/n接收第一类型文件,根据所述第一类型文件的定义方式,逐层解析所述第一类型文件,获得目标接口的请求响应信息格式,确定包括所述请求响应信息格式的用于进行源接口至目标接口的格式转换的第一转换规则,生成第二类型接口和第二类型文件;/n接收针对第二类型接口的访问请求,代理服务器读取所述第一转换规则,根据与所述第一转换规则相逆的第二转换规则将所述访问请求进行转换后,发送至源服务端,将从所述源服务端接收到的响应信息转换为所述第一转换规则中的请求响应信息格式,向所述访问请求的发送方返回转换后的响应信息。/n

【技术特征摘要】
1.一种接口转换方法,其特征在于,包括:
接收第一类型文件,根据所述第一类型文件的定义方式,逐层解析所述第一类型文件,获得目标接口的请求响应信息格式,确定包括所述请求响应信息格式的用于进行源接口至目标接口的格式转换的第一转换规则,生成第二类型接口和第二类型文件;
接收针对第二类型接口的访问请求,代理服务器读取所述第一转换规则,根据与所述第一转换规则相逆的第二转换规则将所述访问请求进行转换后,发送至源服务端,将从所述源服务端接收到的响应信息转换为所述第一转换规则中的请求响应信息格式,向所述访问请求的发送方返回转换后的响应信息。


2.如权利要求1所述的接口转换方法,其特征在于,
所述第一类型文件是wsdl文件,所述第二类型文件是swagger文件,所述源接口是soap接口,所述目标接口是rest接口;
所述第一类型文件是swagger文件,所述第二类型文件是wsdl文件,所述源接口是rest接口,所述目标接口是soap接口。


3.如权利要求1所述的接口转换方法,其特征在于,
在获得目标接口的请求响应信息格式之后,所述方法还包括:接受用户对所述请求响应信息格式的自定义配置。


4.如权利要求3所述的接口转换方法,其特征在于,
所述用户对所述请求响应信息格式的自定义配置包括:
重新定义所述请求响应信息格式的参数的格式,将所述请求响应信息格式中的原参数的格式转换为重新定义后的参数的格式;
所述将所述请求响应信息格式中的原参数的格式转换为重新定义后的参数的格式包括以下转换方式中的至少一种:url转换,请求头信息转换,响应头信息转换,参数转换。


5.如权利要求2所述的接口转换方法,其特征在于,
所述第一类型文件是wsdl文件,所述第二类型文件是swagger文件时,
根据所述第一类型文件的定义方式,逐层解析所述第一类型文件,获得目标接口的请求响应信息格式包括:
将wsdl文件分解为层次化结构,从定义属性中查找到soap业务属性,在soap业务属性中找到用于表示soap的端口项,根据端口项中绑定项中的内容找到定义属性中的绑定节点,根据绑定节点中的操作项找到定义属性中端口类型属性中的操作节点并记录方法名,根据此操作节点中的输入项找到对应的消息节点,在消息节点中的部分项找到对应的节点,以此节点为起点,执行下述循环处理,直至重回到此节点:此节点是元素节点时记录名称后继续解析下一节点,在此节点是复合节点时,到schema节点找到对应的复合节点,逐层解析子节点,忽略非元素或者复合节点;此节点是元素时记录名称后继续解析下一节点,在此节点是复合节点时,到schema节点找到对应的复合节点。


6.一种接口转换装置,其特征在于,包括:
第一接收模块,用于接收第一类型文件;
解析模块,用于根据所述第一类型文件的定义方式,逐层解析所述第一类型文件,获得目标接口的请求响应信息格式;
生成模块,用于确定包括所述请求响应信息格式的用于进行源接口至目标接口的格式转...

【专利技术属性】
技术研发人员:王稚涵肖士良丁硕青赵鹏
申请(专利权)人:北京数聚鑫云信息技术有限公司
类型:发明
国别省市:北京;11

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1