CN113079198B - 一种云平台接口协议转换的方法及装置 - Google Patents
一种云平台接口协议转换的方法及装置 Download PDFInfo
- Publication number
- CN113079198B CN113079198B CN202110292495.XA CN202110292495A CN113079198B CN 113079198 B CN113079198 B CN 113079198B CN 202110292495 A CN202110292495 A CN 202110292495A CN 113079198 B CN113079198 B CN 113079198B
- Authority
- CN
- China
- Prior art keywords
- request
- platform
- parameters
- protocol
- target platform
- 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
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L69/00—Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
- H04L69/08—Protocols for interworking; Protocol conversion
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/34—Network arrangements or protocols for supporting network services or applications involving the movement of software or configuration parameters
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computer Security & Cryptography (AREA)
- Computer And Data Communications (AREA)
- Communication Control (AREA)
Abstract
本发明公开了一种云平台接口协议转换的方法及装置,该方法包括获取源平台的请求信息,请求信息中包括目标平台的标识信息和请求内容,根据目标平台的标识信息从协议库中和映射关系库中,确定出源平台和目标平台的请求协议的数据以及源平台与所述目标平台的请求协议之间的映射关系,根据源平台和目标平台的请求协议的数据以及源平台与目标平台的请求协议之间的映射关系,将请求内容的协议格式转换为目标平台的协议格式,将转换为目标平台的协议格式的请求内容发送给目标平台。通过将源平台发送的请求内容的协议格式转换为目标平台的请求协议的协议格式后,发送给目标平台,能够两个云平台的协议的快速对接,提高通信效率。
Description
技术领域
本发明涉及云平台技术领域,尤其涉及一种云平台接口协议转换的方法及装置。
背景技术
伴随着互联网行业的飞速发展,越来越多企业搭建了私有云平台,用于开放自己的业务,与别的云平台对接,进行生态建设。
在两个企业私有云平台要进行云云对接实现业务时,因两个云平台有各自的云对接协议标准,双方云对接协议上的差异导致双方无法直接进行对接。
云平台的对接通常是使用http接口,各云平台都有自己的对接协议规范,平台之前无法达成统一,在对接时需要为适配对方协议投入人力进行开发与维护,导致对接的进度缓慢。
发明内容
本发明实施例提供一种云平台接口协议转换的方法及装置,用以提高两个云平台的对接通信效率。
第一方面,本发明实施例提供一种云平台接口协议转换的方法,包括:
获取源平台的请求信息,所述请求信息中包括目标平台的标识信息和请求内容;
根据所述目标平台的标识信息从协议库中和映射关系库中,确定出所述源平台和所述目标平台的请求协议的数据以及所述源平台与所述目标平台的请求协议之间的映射关系;
根据所述源平台和所述目标平台的请求协议的数据以及所述源平台与所述目标平台的请求协议之间的映射关系,将所述请求内容的协议格式转换为所述目标平台的协议格式;
将转换为所述目标平台的协议格式的请求内容发送给所述目标平台。
上述技术方案中,通过将源平台发送的请求内容的协议格式转换为目标平台的请求协议的协议格式后,发送给目标平台,能够两个云平台的协议的快速对接,提高通信效率。
可选的,所述根据所述源平台和所述目标平台的请求协议的数据以及所述源平台与所述目标平台的请求协议之间的映射关系,将所述请求内容的协议格式转换为所述目标平台的协议格式,包括:
针对所述目标平台的请求协议的树形结构中与所述源平台的请求协议对应功能的所有请求参数,从三级节点对应的请求参数开始,向下依据父子关系进行递归并建立循环;
当循环至分支节点对应的请求参数时,对所述分支节点下所有子节点建立循环;
当循环至叶子节点对应的请求参数时,根据所述叶子节点对应的请求参数与所述源平台中对应的请求参数的参数值的映射关系,将所述源平台的参数值转换为所述叶子节点对应的请求参数的值,并递归为所述叶子节点对应的请求参数的父节点进行赋值;
在确认循环结束时,得到转换为所述目标平台的协议格式的请求内容。
可选的,所述将转换协议格式的所述请求内容发送给所述目标平台之后,还包括:
获取所述目标平台的响应信息;
依据所述源平台和所述目标平台的响应协议的数据以及所述源平台与所述目标平台的响应协议之间的映射关系,将所述响应内容的协议格式转换为所述源平台的协议格式;
将转换为所述源平台的协议格式的响应内容发送给所述源平台。
可选的,所述依据所述源平台和所述目标平台的响应协议的数据以及所述源平台与所述目标平台的响应协议之间的映射关系,将所述响应内容的协议格式转换为所述源平台的协议格式,包括:
针对所述源平台的响应协议的树形结构中与所述目标平台的响应协议对应功能的所有响应参数,从三级节点对应的响应参数开始,向下依据父子关系进行递归并建立循环;
当循环至分支节点对应的响应参数时,对所述分支节点下所有子节点建立循环;
当循环至叶子节点对应的响应参数时,根据所述叶子节点对应的响应参数与所述目标平台中对应的响应参数的参数值的映射关系,将所述目标平台的参数值转换为所述叶子节点对应的响应参数的值,并递归为所述叶子节点对应的响应参数的父节点进行赋值;
在确认循环结束时,得到转换为所述源平台的协议格式的响应内容。
可选的,在获取源平台的请求信息之前,还包括:
获取待对接的两个云平台的接口协议;
为具有相同用途的两个接口协议配置相同的功能名;
将具有相同功能名的两个接口协议的参数转换为树形结构,并为所述树形结构中的各节点配置信息;
将配置完成的树形结构转换为xml格式文件;
对所述xml格式文件进行解析,并存储到所述协议库中;
遍历所述具有相同功能名的两个接口协议的参数的树形结构,将具有相同映射关键字的参数建立映射关系,并将映射关系存储到映射关系库中。
可选的,所述将具有相同功能名的两个接口协议的参数转换为树形结构,包括:
将平台的标识信息确定为所述树形结构的根节点;
将功能名确定为所述树形结构的一级节点;
将接口协议中的请求参数或响应参数确定为所述树形结构的二级节点;
将所述接口协议中的参数确定为三级节点;其中,携带有下级参数的参数为分支节点,参数的值为变量的参数为叶子节点。
可选的,所述为所述树形结构中的各节点配置信息,包括:
为所述树形结构的根节点配置平台的标识信息;
为所述树形结构的一级节点配置功能名和接口地址;
为二级节点配置请求参数或响应参数;
为三级节点配置参数的位置;
为从三级节点开始的分支节点或叶子节点配置参数的值类型;
根据所述参数的值类型,配置所述参数的属性;
为各级节点对应的参数或参数值配置映射关键字;其中,两个接口协议中待建立映射关系的参数的映射关键字相同。
第二方面,本发明实施例提供一种云平台接口协议转换的装置,包括:
收发单元,用于获取源平台的请求信息,所述请求信息中包括目标平台的标识信息和请求内容;
处理单元,用于根据所述目标平台的标识信息从协议库中和映射关系库中,确定出所述源平台和所述目标平台的请求协议的数据以及所述源平台与所述目标平台的请求协议之间的映射关系;根据所述源平台和所述目标平台的请求协议的数据以及所述源平台与所述目标平台的请求协议之间的映射关系,将所述请求内容的协议格式转换为所述目标平台的协议格式;
所述收发单元,还用于将转换为所述目标平台的协议格式的请求内容发送给所述目标平台。
可选的,所述处理单元具体用于:
针对所述目标平台的请求协议的树形结构中与所述源平台的请求协议对应功能的所有请求参数,从三级节点对应的请求参数开始,向下依据父子关系进行递归并建立循环;
当循环至分支节点对应的请求参数时,对所述分支节点下所有子节点建立循环;
当循环至叶子节点对应的请求参数时,根据所述叶子节点对应的请求参数与所述源平台中对应的请求参数的参数值的映射关系,将所述源平台的参数值转换为所述叶子节点对应的请求参数的值,并递归为所述叶子节点对应的请求参数的父节点进行赋值;
在确认循环结束时,得到转换为所述目标平台的协议格式的请求内容。
可选的,所述处理单元还用于:
所述将转换协议格式的所述请求内容发送给所述目标平台之后,获取所述目标平台的响应信息;
依据所述源平台和所述目标平台的响应协议的数据以及所述源平台与所述目标平台的响应协议之间的映射关系,将所述响应内容的协议格式转换为所述源平台的协议格式;
将转换为所述源平台的协议格式的响应内容发送给所述源平台。
可选的,所述处理单元具体用于:
针对所述源平台的响应协议的树形结构中与所述目标平台的响应协议对应功能的所有响应参数,从三级节点对应的响应参数开始,向下依据父子关系进行递归并建立循环;
当循环至分支节点对应的响应参数时,对所述分支节点下所有子节点建立循环;
当循环至叶子节点对应的响应参数时,根据所述叶子节点对应的响应参数与所述目标平台中对应的响应参数的参数值的映射关系,将所述目标平台的参数值转换为所述叶子节点对应的响应参数的值,并递归为所述叶子节点对应的响应参数的父节点进行赋值;
在确认循环结束时,得到转换为所述源平台的协议格式的响应内容。
可选的,所述处理单元还用于:
在获取源平台的请求信息之前,获取待对接的两个云平台的接口协议;
为具有相同用途的两个接口协议配置相同的功能名;
将具有相同功能名的两个接口协议的参数转换为树形结构,并为所述树形结构中的各节点配置信息;
将配置完成的树形结构转换为xml格式文件;
对所述xml格式文件进行解析,并存储到所述协议库中;
遍历所述具有相同功能名的两个接口协议的参数的树形结构,将具有相同映射关键字的参数建立映射关系,并将映射关系存储到映射关系库中。
可选的,所述处理单元具体用于:
将平台的标识信息确定为所述树形结构的根节点;
将功能名确定为所述树形结构的一级节点;
将接口协议中的请求参数或响应参数确定为所述树形结构的二级节点;
将所述接口协议中的参数确定为三级节点;其中,携带有下级参数的参数为分支节点,参数的值为变量的参数为叶子节点。
可选的,所述处理单元具体用于:
为所述树形结构的根节点配置平台的标识信息;
为所述树形结构的一级节点配置功能名和接口地址;
为二级节点配置请求参数或响应参数;
为三级节点配置参数的位置;
为从三级节点开始的分支节点或叶子节点配置参数的值类型;
根据所述参数的值类型,配置所述参数的属性;
为各级节点对应的参数或参数值配置映射关键字;其中,两个接口协议中待建立映射关系的参数的映射关键字相同。
第三方面,本发明实施例还提供一种计算设备,包括:
存储器,用于存储程序指令;
处理器,用于调用所述存储器中存储的程序指令,按照获得的程序执行上述云平台接口协议转换的方法。
第四方面,本发明实施例还提供一种计算机可读非易失性存储介质,包括计算机可读指令,当计算机读取并执行所述计算机可读指令时,使得计算机执行上述云平台接口协议转换的方法。
附图说明
为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简要介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域的普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例提供的一种***架构的示意图;
图2为本发明实施例提供的一种云平台接口协议转换的方法的流程示意图;
图3为本发明实施例提供的一种接口协议的示意图;
图4为本发明实施例提供的一种接口协议的参数的树形结构的示意图;
图5为本发明实施例提供的一种接口协议的参数的树形结构的示意图;
图6为本发明实施例提供的一种映射关系的示意图;
图7为本发明实施例提供的一种云平台接口协议转换的方法的流程示意图;
图8为本发明实施例提供的一种云平台接口协议转换的方法的流程示意图;
图9为本发明实施例提供的一种云平台接口协议转换的装置的结构示意图。
具体实施方式
为了使本发明的目的、技术方案和优点更加清楚,下面将结合附图对本发明作进一步地详细描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其它实施例,都属于本发明保护的范围。
图1为本发明实施例提供的一种***架构。如图1所示,该***架构可以为服务器100,该服务器100可以包括处理器110、通信接口120和存储器130。
其中,通信接口120用于与终端设备进行通信,收发该终端设备传输的信息,实现通信。
处理器110是服务器100的控制中心,利用各种接口和线路连接整个服务器100的各个部分,通过运行或执行存储在存储器130内的软件程序/或模块,以及调用存储在存储器130内的数据,执行服务器100的各种功能和处理数据。可选地,处理器110可以包括一个或多个处理单元。
存储器130可用于存储软件程序以及模块,处理器110通过运行存储在存储器130的软件程序以及模块,从而执行各种功能应用以及数据处理。存储器130可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作***、至少一个功能所需的应用程序等;存储数据区可存储根据业务处理所创建的数据等。此外,存储器130可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他易失性固态存储器件。
需要说明的是,上述图1所示的结构仅是一种示例,本发明实施例对此不做限定。
基于上述描述,图2详细的示出了本发明实施例提供的一种云平台接口协议转换的方法的流程,该流程可以由云平台接口协议转换的装置执行。
如图2所示,该流程具体包括:
步骤201,获取源平台的请求信息;根据所述目标平台的标识信息从协议库中和映射关系库中,确定出所述源平台和所述目标平台的请求协议的数据以及所述源平台与所述目标平台的请求协议之间的映射关系。
在本发明实施例中,请求信息中可以包括目标平台的标识信息和请求内容。其中,目标平台的标识信息可以用于查询协议库和映射关系库。该目标平台的标识信息,可以是目标平台的名称、id等信息。
在获取该源平台的请求信息之前,需要先建立协议库和映射关系库。具体的,可以先获取待对接的两个云平台的接口协议,为具有相同用途的两个接口协议配置相同的功能名,然后将具有相同功能名的两个接口协议的参数转换为树形结构,并为树形结构中的各节点配置信息。再将配置完成的树形结构转换为xml格式文件,之后对xml格式文件进行解析,并存储到协议库中。最后遍历具有相同功能名的两个接口协议的参数的树形结构,将具有相同映射关键字的参数建立映射关系,并将映射关系存储到映射关系库中。
其中,将具有相同功能名的两个接口协议的参数转换为树形结构时,一般是将平台的标识信息确定为树形结构的根节点;将功能名确定为树形结构的一级节点;将接口协议中的请求参数或响应参数确定为树形结构的二级节点;将接口协议中的参数确定为三级节点;其中,携带有下级参数的参数为分支节点,参数的值为变量的参数为叶子节点。
而为树形结构中的各节点配置信息时,可以为树形结构的根节点配置平台的标识信息;为树形结构的一级节点配置功能名和接口地址;为二级节点配置请求参数或响应参数;为三级节点配置参数的位置;为从三级节点开始的分支节点或叶子节点配置参数的值类型;根据参数的值类型,配置参数的属性;为各级节点对应的参数或参数值配置映射关键字;其中,两个接口协议中待建立映射关系的参数的映射关键字相同。
举例来说,定义A、B两个的云平台接口协议用于协议转换的协议转化器,图3为A平台platform1与B平台platform2的其中一个接口协议,现A平台想要访问B平台获取用户信息,两个接口协议虽然格式相同但是参数名及参数值不同。A平台通过协议转换器可实现这接口协议的转换,直接访问到B平台。
协议转换器具体实现如下:
第一步、格式化云平台接口协议
首先要构建xml格式的云平台接口协议。
因各云平台协议中相同用途的接口名不统一,所以在本专利中定义功能为各平台协议中要进行转换的一个接口,按接口用途自行定义一个统一的功能名。
对云平台协议中功能对应的接口,将接口中的参数转换为树形结构,根节点中配置平台信息,功能名作为一级节点,配置接口地址,二级节点标识请求参数或是响应参数,从三级节点开始为接口中的参数,将有下级参数的参数依旧作为分支节点,将接口中参数的值为变量的参数作为叶子节点。为节点添加以下属性:
a)为三级节点定义参数位置,按http协议分为param、header、form、json。如图4、图5中param标签中的location属性。参数位置用于请求转换时确认各参数再http请求中的位置。
b)对从三级节点开始的分支节点及叶子节点定义参数值类型,值为对象类型的节点定义为json、list等,值为变量的节点根据变量的类型定义为string、long、int、double、map等。如图4、图5中param标签中的paramType属性。参数值类型用于请求转换时提取各参数的value。
c)对于所有叶子节点,根据其值的类型及范围,定义其属性。如枚举型列举所有枚举值并以|符号拼接,数值型则定义其范围、单位、步长,不定义属性则为透传型参数。如图4、图5中param节标签下的value标签。转换器根据属性将源平台请求中参数的value转换为目标平台协议中的value。
d)为各级节点定义参数映射关键字,两个协议中要建立映射关系的参数映射关键字一致。如图4、图5中param节标签中的mappingKey属性。映射关键字用于自动建立协议间映射关系时,两个协议间映射关键字相同的参数建立映射关系。
将整理好的树形结构转为xml文件,后续用于放入协议库中。A平台xml文件格式样例见图4,B平台xml文件格式样例见图5。
第二步、存入协议库
协议转换器依据上述第一步中定义的生成xml文件要求构建xml文件解析算法,从根节点起递归向下解析,先解析xml文件根节点获取该文件对应的云平台,从一级节点中解析功能名、接口地址,二级节点确认用途,将后续节点的参数建立父子关系。最后以平台、功能级用途三个维度保存参数的属性、父子关系、参数值等内容。
第三步、建立云平台协议间的映射关系
选定两个要进行转换的云平台,从协议库中查询两个平台的协议内容,遍历两个平台的所有参数,将映射关键字相同的参数建立映射关系。将结果保存至映射关系库,供请求转换接口查询。比如A、B协议,根据协议库中各参数mappingKey的值,将建立如图6所示的映射关系。
在具体应用时,当获取到源平台的请求信息后,就可以依据根据目标平台的标识信息从协议库中和映射关系库中,确定出源平台和目标平台的请求协议的数据以及源平台与目标平台的请求协议之间的映射关系。也就是说,协议转换器的请求转换接口收到请求后,从协议库和映射关系库读取源平台和目标平台的数据。
步骤202,根据所述源平台和所述目标平台的请求协议的数据以及所述源平台与所述目标平台的请求协议之间的映射关系,将所述请求内容的协议格式转换为所述目标平台的协议格式。
具体的,针对目标平台的请求协议的树形结构中与源平台的请求协议对应功能的所有请求参数,从三级节点对应的请求参数开始,向下依据父子关系进行递归并建立循环。当循环至分支节点对应的请求参数时,对分支节点下所有子节点建立循环;当循环至叶子节点对应的请求参数时,根据叶子节点对应的请求参数与源平台中对应的请求参数的参数值的映射关系,将源平台的参数值转换为叶子节点对应的请求参数的值,并递归为叶子节点对应的请求参数的父节点进行赋值。在确认循环结束时,得到转换为目标平台的协议格式的请求内容。
举例来说,根据协议转换算法,将收到的请求及响应进行转换。转换算法如下:
a)对目标平台协议中对应功能下所有请求参数,从三级节点参数开始向下根据上述第二步中建立的父子关系递归并建立循环。
b)循环时当循环到分支节点时。对该节点下所有子节点再建立自循环;当循环至叶子节点参数时,根据该参数与映射的源平台参数的参数值映射关系,将目标平台请求中对应参数的值转换为该参数的值并向上递归为其父节点进行赋值。
c)循环完成后可将源平台协议结构的请求转换为目标平台协议结构的请求。
步骤203,将转换为所述目标平台的协议格式的请求内容发送给所述目标平台。
当协议格式转换完成后,就可以将转换为目标平台的协议格式的请求内容发送给目标平台,然后可以接收到目标平台的响应信息,依据源平台和目标平台的响应协议的数据以及源平台与目标平台的响应协议之间的映射关系,将响应内容的协议格式转换为源平台的协议格式。将转换为源平台的协议格式的响应内容发送给源平台。
其中,协议格式转换的流程可以是针对源平台的响应协议的树形结构中与目标平台的响应协议对应功能的所有响应参数,从三级节点对应的响应参数开始,向下依据父子关系进行递归并建立循环;当循环至分支节点对应的响应参数时,对分支节点下所有子节点建立循环;当循环至叶子节点对应的响应参数时,根据叶子节点对应的响应参数与目标平台中对应的响应参数的参数值的映射关系,将目标平台的参数值转换为叶子节点对应的响应参数的值,并递归为叶子节点对应的响应参数的父节点进行赋值;在确认循环结束时,得到转换为源平台的协议格式的响应内容。
也就是说,在目标平台响应后,同样按照递归循环的方式,将目标平台协议结构的响应转换为源平台协议结构的响应。
图7示例性的示出了一种协议转换的流程,第一步将平台协议按照要求进行格式化,转换成XML文件,第二步将XML文件导入到协议转换器的协议库中,第三步选择要转换的两个协议库中的平台,转换器自动建立映射关系保存至映射关系库。协议转换器提供一个请求转换接口,将请求信息根据源平台和目标平台在映射关系库中的映射关系,转为目标平台格式的请求,转发至目标平台。
为了更好的解释本发明实施例,下面将在具体的实施场景下来描述上述协议转换的过程。
对于A平台请求转换成B平台请求,A为源平台,B为目标平台,假设A平台请求为:
假设B平台响应为:
如图8所示具体的转换流程如下:
步骤801,接收A平台发送的请求。
步骤802,读取协议库和映射关系库。
1、从协议库中获取A、B平台的接口协议对应的参数信息;
2、从映射关系库中获取A、B平台的接口协议对应的参数的映射关系。
步骤803,对B平台的接口协议中的三级节点中的请求参数建立for循环。
具体如下:
for循环{
对于叶子节点,根据映射关系得知映射A平台请求中的参数accessToken,即为accessToken赋值,令accessToken:123456789。
对于分支节点,对所有子节点建立子循环:
for循环{
根据映射关系得到映射A平台请求中的参数userid,实现为accoutid赋值,令accountid:test。
}
循环结束,为account赋值:
account:{
accountid:test
}
}
步骤804,循环结束,生成B平台的请求。
{
〝accessToken〞:〝123456789〞
〝account〞:{
〝accountid〞:〝test〞
}
}
步骤805,将转换后的请求发送给B平台。
步骤806,接收到B平台的响应。
步骤807,对A平台接口中三级节点中的响应参数建立for循环。
具体如下:
for循环{
对于分支节点,对所有子节点建立子循环:
for循环{
根据映射关系得到映射B平台响应中的参数accountid,实现为userid赋值,令userid:test。
根据映射关系得到映射B平台响应中的参数accountage,为age赋值,令age:20。
根据映射关系得到映射B平台响应中的参数accountsex,为sex赋值,令sex:man。
}
循环结束,为user赋值:
user:{
userid:test
age:20
sex:man
}
}
步骤808,将转换后的响应发送给A平台。
在本发明实施例中,获取源平台的请求信息,请求信息中包括目标平台的标识信息和请求内容,根据目标平台的标识信息从协议库中和映射关系库中,确定出源平台和目标平台的请求协议的数据以及源平台与目标平台的请求协议之间的映射关系,根据源平台和目标平台的请求协议的数据以及源平台与目标平台的请求协议之间的映射关系,将请求内容的协议格式转换为目标平台的协议格式,将转换为目标平台的协议格式的请求内容发送给目标平台。通过将源平台发送的请求内容的协议格式转换为目标平台的请求协议的协议格式后,发送给目标平台,能够两个云平台的协议的快速对接,提高通信效率。
基于相同的技术构思,图9示例性的示出了本发明实施例提供的一种云平台接口协议转换的装置的结构,该装置可以执行云平台接口协议转换的流程。
如图9所示,该装置具体包括:
收发单元901,用于获取源平台的请求信息,所述请求信息中包括目标平台的标识信息和请求内容;
处理单元902,用于根据所述目标平台的标识信息从协议库中和映射关系库中,确定出所述源平台和所述目标平台的请求协议的数据以及所述源平台与所述目标平台的请求协议之间的映射关系;根据所述源平台和所述目标平台的请求协议的数据以及所述源平台与所述目标平台的请求协议之间的映射关系,将所述请求内容的协议格式转换为所述目标平台的协议格式;
所述收发单元901,还用于将转换为所述目标平台的协议格式的请求内容发送给所述目标平台。
可选的,所述处理单元902具体用于:
针对所述目标平台的请求协议的树形结构中与所述源平台的请求协议对应功能的所有请求参数,从三级节点对应的请求参数开始,向下依据父子关系进行递归并建立循环;
当循环至分支节点对应的请求参数时,对所述分支节点下所有子节点建立循环;
当循环至叶子节点对应的请求参数时,根据所述叶子节点对应的请求参数与所述源平台中对应的请求参数的参数值的映射关系,将所述源平台的参数值转换为所述叶子节点对应的请求参数的值,并递归为所述叶子节点对应的请求参数的父节点进行赋值;
在确认循环结束时,得到转换为所述目标平台的协议格式的请求内容。
可选的,所述处理单元902还用于:
所述将转换协议格式的所述请求内容发送给所述目标平台之后,获取所述目标平台的响应信息;
依据所述源平台和所述目标平台的响应协议的数据以及所述源平台与所述目标平台的响应协议之间的映射关系,将所述响应内容的协议格式转换为所述源平台的协议格式;
将转换为所述源平台的协议格式的响应内容发送给所述源平台。
可选的,所述处理单元902具体用于:
针对所述源平台的响应协议的树形结构中与所述目标平台的响应协议对应功能的所有响应参数,从三级节点对应的响应参数开始,向下依据父子关系进行递归并建立循环;
当循环至分支节点对应的响应参数时,对所述分支节点下所有子节点建立循环;
当循环至叶子节点对应的响应参数时,根据所述叶子节点对应的响应参数与所述目标平台中对应的响应参数的参数值的映射关系,将所述目标平台的参数值转换为所述叶子节点对应的响应参数的值,并递归为所述叶子节点对应的响应参数的父节点进行赋值;
在确认循环结束时,得到转换为所述源平台的协议格式的响应内容。
可选的,所述处理单元902还用于:
在获取源平台的请求信息之前,获取待对接的两个云平台的接口协议;
为具有相同用途的两个接口协议配置相同的功能名;
将具有相同功能名的两个接口协议的参数转换为树形结构,并为所述树形结构中的各节点配置信息;
将配置完成的树形结构转换为xml格式文件;
对所述xml格式文件进行解析,并存储到所述协议库中;
遍历所述具有相同功能名的两个接口协议的参数的树形结构,将具有相同映射关键字的参数建立映射关系,并将映射关系存储到映射关系库中。
可选的,所述处理单元902具体用于:
将平台的标识信息确定为所述树形结构的根节点;
将功能名确定为所述树形结构的一级节点;
将接口协议中的请求参数或响应参数确定为所述树形结构的二级节点;
将所述接口协议中的参数确定为三级节点;其中,携带有下级参数的参数为分支节点,参数的值为变量的参数为叶子节点。
可选的,所述处理单元902具体用于:
为所述树形结构的根节点配置平台的标识信息;
为所述树形结构的一级节点配置功能名和接口地址;
为二级节点配置请求参数或响应参数;
为三级节点配置参数的位置;
为从三级节点开始的分支节点或叶子节点配置参数的值类型;
根据所述参数的值类型,配置所述参数的属性;
为各级节点对应的参数或参数值配置映射关键字;其中,两个接口协议中待建立映射关系的参数的映射关键字相同。
基于相同的技术构思,本发明实施例还提供了一种计算设备,包括:
存储器,用于存储程序指令;
处理器,用于调用存储器中存储的程序指令,按照获得的程序执行上述云平台接口协议转换的方法。
基于相同的技术构思,本发明实施例还提供了一种计算机可读非易失性存储介质,包括计算机可读指令,当计算机读取并执行计算机可读指令时,使得计算机执行上述云平台接口协议转换的方法。
本发明是参照根据本发明实施例的方法、设备(***)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
尽管已描述了本发明的优选实施例,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例作出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本发明范围的所有变更和修改。
显然,本领域的技术人员可以对本发明进行各种改动和变型而不脱离本发明的精神和范围。这样,倘若本发明的这些修改和变型属于本发明权利要求及其等同技术的范围之内,则本发明也意图包含这些改动和变型在内。
Claims (7)
1.一种云平台接口协议转换的方法,其特征在于,包括:
获取源平台的请求信息,所述请求信息中包括目标平台的标识信息和请求内容;
根据所述目标平台的标识信息从协议库中和映射关系库中,确定出所述源平台和所述目标平台的请求协议的数据以及所述源平台与所述目标平台的请求协议之间的映射关系;
根据所述源平台和所述目标平台的请求协议的数据以及所述源平台与所述目标平台的请求协议之间的映射关系,将所述请求内容的协议格式转换为所述目标平台的协议格式;
将转换为所述目标平台的协议格式的请求内容发送给所述目标平台;
所述根据所述源平台和所述目标平台的请求协议的数据以及所述源平台与所述目标平台的请求协议之间的映射关系,将所述请求内容的协议格式转换为所述目标平台的协议格式,包括:
针对所述目标平台的请求协议的树形结构中与所述源平台的请求协议对应功能的所有请求参数,从三级节点对应的请求参数开始,向下依据父子关系进行递归并建立循环;
当循环至分支节点对应的请求参数时,对所述分支节点下所有子节点建立循环;
当循环至叶子节点对应的请求参数时,根据所述叶子节点对应的请求参数与所述源平台中对应的请求参数的参数值的映射关系,将所述源平台的参数值转换为所述叶子节点对应的请求参数的值,并递归为所述叶子节点对应的请求参数的根节点进行赋值;
在确认循环结束时,得到转换为所述目标平台的协议格式的请求内容;
在获取源平台的请求信息之前,还包括:
获取待对接的两个云平台的接口协议;
为具有相同用途的两个接口协议配置相同的功能名;
将具有相同功能名的两个接口协议的参数转换为树形结构,并为所述树形结构中的各节点配置信息;
将配置完成的树形结构转换为xml格式文件;
对所述xml格式文件进行解析,并存储到所述协议库中;
遍历所述具有相同功能名的两个接口协议的参数的树形结构,将具有相同映射关键字的参数建立映射关系,并将映射关系存储到映射关系库中;
所述将具有相同功能名的两个接口协议的参数转换为树形结构,包括:
将平台的标识信息确定为所述树形结构的根节点;
将功能名确定为所述树形结构的一级节点;
将接口协议中的请求参数或响应参数确定为所述树形结构的二级节点;
将所述接口协议中的参数确定为三级节点;其中,携带有下级参数的参数为分支节点,参数的值为变量的参数为叶子节点。
2.如权利要求1所述的方法,其特征在于,所述将转换协议格式的所述请求内容发送给所述目标平台之后,还包括:
获取所述目标平台的响应信息;
依据所述源平台和所述目标平台的响应协议的数据以及所述源平台与所述目标平台的响应协议之间的映射关系,将所述响应内容的协议格式转换为所述源平台的协议格式;
将转换为所述源平台的协议格式的响应内容发送给所述源平台。
3.如权利要求2所述的方法,其特征在于,所述依据所述源平台和所述目标平台的响应协议的数据以及所述源平台与所述目标平台的响应协议之间的映射关系,将所述响应内容的协议格式转换为所述源平台的协议格式,包括:
针对所述源平台的响应协议的树形结构中与所述目标平台的响应协议对应功能的所有响应参数,从三级节点对应的响应参数开始,向下依据父子关系进行递归并建立循环;
当循环至分支节点对应的响应参数时,对所述分支节点下所有子节点建立循环;
当循环至叶子节点对应的响应参数时,根据所述叶子节点对应的响应参数与所述目标平台中对应的响应参数的参数值的映射关系,将所述目标平台的参数值转换为所述叶子节点对应的响应参数的值,并递归为所述叶子节点对应的响应参数的根节点进行赋值;
在确认循环结束时,得到转换为所述源平台的协议格式的响应内容。
4.如权利要求1所述的方法,其特征在于,所述为所述树形结构中的各节点配置信息,包括:
为所述树形结构的根节点配置平台的标识信息;
为所述树形结构的一级节点配置功能名和接口地址;
为二级节点配置请求参数或响应参数;
为三级节点配置参数的位置;
为从三级节点开始的分支节点或叶子节点配置参数的值类型;
根据所述参数的值类型,配置所述参数的属性;
为各级节点对应的参数或参数值配置映射关键字;其中,两个接口协议中待建立映射关系的参数的映射关键字相同。
5.一种云平台接口协议转换的装置,其特征在于,包括:
收发单元,用于获取源平台的请求信息,所述请求信息中包括目标平台的标识信息和请求内容;
处理单元,用于根据所述目标平台的标识信息从协议库中和映射关系库中,确定出所述源平台和所述目标平台的请求协议的数据以及所述源平台与所述目标平台的请求协议之间的映射关系;根据所述源平台和所述目标平台的请求协议的数据以及所述源平台与所述目标平台的请求协议之间的映射关系,将所述请求内容的协议格式转换为所述目标平台的协议格式;
所述收发单元,还用于将转换为所述目标平台的协议格式的请求内容发送给所述目标平台;
所述处理单元具体用于:
针对所述目标平台的请求协议的树形结构中与所述源平台的请求协议对应功能的所有请求参数,从三级节点对应的请求参数开始,向下依据父子关系进行递归并建立循环;
当循环至分支节点对应的请求参数时,对所述分支节点下所有子节点建立循环;
当循环至叶子节点对应的请求参数时,根据所述叶子节点对应的请求参数与所述源平台中对应的请求参数的参数值的映射关系,将所述源平台的参数值转换为所述叶子节点对应的请求参数的值,并递归为所述叶子节点对应的请求参数的根节点进行赋值;
在确认循环结束时,得到转换为所述目标平台的协议格式的请求内容;
在获取源平台的请求信息之前,还包括:
获取待对接的两个云平台的接口协议;
为具有相同用途的两个接口协议配置相同的功能名;
将具有相同功能名的两个接口协议的参数转换为树形结构,并为所述树形结构中的各节点配置信息;
将配置完成的树形结构转换为xml格式文件;
对所述xml格式文件进行解析,并存储到所述协议库中;
遍历所述具有相同功能名的两个接口协议的参数的树形结构,将具有相同映射关键字的参数建立映射关系,并将映射关系存储到映射关系库中;
所述将具有相同功能名的两个接口协议的参数转换为树形结构,包括:
将平台的标识信息确定为所述树形结构的根节点;
将功能名确定为所述树形结构的一级节点;
将接口协议中的请求参数或响应参数确定为所述树形结构的二级节点;
将所述接口协议中的参数确定为三级节点;其中,携带有下级参数的参数为分支节点,参数的值为变量的参数为叶子节点。
6.一种计算设备,其特征在于,包括:
存储器,用于存储程序指令;
处理器,用于调用所述存储器中存储的程序指令,按照获得的程序执行权利要求1至4任一项所述的方法。
7.一种计算机可读非易失性存储介质,其特征在于,包括计算机可读指令,当计算机读取并执行所述计算机可读指令时,使得计算机执行如权利要求1至4任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110292495.XA CN113079198B (zh) | 2021-03-18 | 2021-03-18 | 一种云平台接口协议转换的方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110292495.XA CN113079198B (zh) | 2021-03-18 | 2021-03-18 | 一种云平台接口协议转换的方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN113079198A CN113079198A (zh) | 2021-07-06 |
CN113079198B true CN113079198B (zh) | 2022-07-01 |
Family
ID=76613176
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110292495.XA Active CN113079198B (zh) | 2021-03-18 | 2021-03-18 | 一种云平台接口协议转换的方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113079198B (zh) |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113742407B (zh) * | 2021-08-31 | 2024-04-30 | 浙江惠瀜网络科技有限公司 | 数据转换方法及装置 |
CN114499930A (zh) * | 2021-12-13 | 2022-05-13 | 奇安信科技集团股份有限公司 | 一种多协议单点登录请求的处理方法及装置 |
CN114817117B (zh) * | 2022-06-23 | 2022-10-04 | 浙江大华技术股份有限公司 | 协议兼容方法、电子设备及计算机可读存储装置 |
CN117573762B (zh) * | 2024-01-15 | 2024-04-16 | 杭州数云信息技术有限公司 | 数据连接平台的数据处理方法及装置、存储介质、服务器 |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108696381A (zh) * | 2017-04-12 | 2018-10-23 | 腾讯科技(深圳)有限公司 | 一种协议配置方法及装置 |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107948135B (zh) * | 2017-10-31 | 2020-02-21 | 贵州白山云科技股份有限公司 | 一种支持多种api协议的数据处理方法及装置 |
US10706085B2 (en) * | 2018-01-03 | 2020-07-07 | Oracle International Corporation | Method and system for exposing virtual assistant services across multiple platforms |
CN108200077B (zh) * | 2018-01-18 | 2021-04-27 | 北京网信云服信息科技有限公司 | 一种调用接口的方法及装置 |
CN109635019B (zh) * | 2018-10-23 | 2023-08-22 | 平安科技(深圳)有限公司 | 请求处理方法、装置、设备及存储介质 |
-
2021
- 2021-03-18 CN CN202110292495.XA patent/CN113079198B/zh active Active
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108696381A (zh) * | 2017-04-12 | 2018-10-23 | 腾讯科技(深圳)有限公司 | 一种协议配置方法及装置 |
Also Published As
Publication number | Publication date |
---|---|
CN113079198A (zh) | 2021-07-06 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN113079198B (zh) | 一种云平台接口协议转换的方法及装置 | |
CN110598280B (zh) | 一种设备仿真***和方法、计算机可读存储介质 | |
CN109213519B (zh) | 一种异构api适配处理方法及*** | |
CN109635019B (zh) | 请求处理方法、装置、设备及存储介质 | |
CN108279987A (zh) | 应用程序的版本管理方法及装置 | |
CN110554958A (zh) | 图数据库测试方法、***、设备和存储介质 | |
CN110290135B (zh) | 对复杂报文统一规范化处理的方法及请求的数据流 | |
CN113238740A (zh) | 代码生成方法、代码生成装置、存储介质及电子设备 | |
CN109062906B (zh) | 程序语言资源的翻译方法及装置 | |
CN110888672B (zh) | 一种基于元数据架构的表达式引擎实现方法及*** | |
CN111142849B (zh) | 流程处理方法、装置、存储介质及处理器 | |
CN111078573A (zh) | 一种测试报文的生成方法及装置 | |
CN111580821B (zh) | 脚本绑定方法、装置、电子设备及计算机可读存储介质 | |
CN112395339B (zh) | ***间数据准入校验方法、装置、计算机设备和存储介质 | |
CN112883088B (zh) | 一种数据处理方法、装置、设备及存储介质 | |
CN106293862B (zh) | 一种可扩展标记语言xml数据的解析方法和装置 | |
CN114466047B (zh) | 物联网设备便捷接入物联网平台的方法、平台、设备及介质 | |
CN112130860B (zh) | Json对象解析方法、装置、电子设备及存储介质 | |
CN110990635B (zh) | 一种基于染整设备的动态建模方法 | |
CN111401020A (zh) | 一种界面加载方法、***和计算设备 | |
CN114499759B (zh) | 报文生成方法、装置、电子设备及存储介质 | |
CN113672518B (zh) | 一种测试用例构建方法及相关设备 | |
CN109165049A (zh) | 组件数据处理方法及装置 | |
CN111131477B (zh) | 一种数据处理方法、装置及设备 | |
CN110362336B (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 |