异构系统的调用方法和接口管理平台与流程

文档序号:25544129发布日期:2021-06-18 20:46
异构系统的调用方法和接口管理平台与流程

本发明涉及计算机技术领域,特别涉及一种异构系统的调用方法、系统和接口管理平台。



背景技术:

随着web2.0时代的到来,基于web环境的互联网应用越来越广泛。在企业信息化的过程中,很多应用架设在web平台上,也由此出现了大量的web应用系统。同时,在公司之间、团队之间又需要大量的接口来提供各种业务的合作。

在相关技术中,合作的系统双方将接口文档作为共享的合作信息,通常使用接口文档管理平台提供共享功能。在系统间的调用过程中,存在调用关系的两个系统间需要设置对外的接口,以方便对方进行调用。



技术实现要素:

发明人对相关技术进行分析后发现,在相关技术中,当一个业务平台需要多个异构系统进行支撑时,这些支撑的系统均需要单独开发自身提供的接口的对外调用逻辑,这导致业务平台构建过程中需要各个系统进行重复的工作,导致开发效率低。

本发明实施例所要解决的一个技术问题是:如何提高异构系统的开发效率。

根据本发明一些实施例的第一个方面,提供一种异构系统的调用方法,包括:接口管理平台获取第一系统发送的、对被调用接口的调用请求,其中,被调用接口是第二系统提供的接口,接口管理平台存储有第二系统提供的接口的接口信息,调用请求包括被调用接口的接口标识和调用参数值;接口管理平台查询接口标识对应的接口信息;接口管理平台根据接口信息和调用参数值,向第二系统发起对被调用接口的调用;接口管理平台将调用参数值对应的调用的结果返回给第一系统。

在一些实施例中,调用方法还包括:接口管理平台获取第一系统发送的通证申请请求;接口管理平台向第一系统返回通证,其中,通证用于进行身份验证。

在一些实施例中,调用请求还包括通证,并且,调用方法还包括:接口管理平台对调用请求中的通证进行身份验证,以便在身份验证通过的情况下发起对被调用接口的调用。

在一些实施例中,调用方法还包括:接口管理平台获取第一系统发送的、对第二系统提供的接口的调用权限申请;接口管理平台为第一系统分配相应的调用权限。

在一些实施例中,调用方法还包括:在获取调用请求后,接口管理平台根据接口标识,确定第一系统是否具备对被调用接口的调用权限,以便在第一系统具备调用权限的情况下发起对被调用接口的调用。

在一些实施例中,调用方法还包括:接口管理平台接收第二系统发送的接口注册请求,其中,接口注册请求包括接口信息;接口管理平台为相应接口分配接口标识;接口管理平台存储接口信息和接口标识之间的对应关系。

在一些实施例中,接口信息包括域名和上下文。

根据本发明一些实施例的第二个方面,提供一种接口管理平台,包括:获取模块,被配置为获取第一系统发送的、对被调用接口的调用请求,其中,被调用接口是第二系统提供的接口,接口管理平台存储有第二系统提供的接口的接口信息,调用请求包括被调用接口的接口标识和调用参数值;查询模块,被配置为查询接口标识对应的接口信息;调用模块,被配置为根据接口信息和调用参数值,向第二系统发起对被调用接口的调用;结果返回模块,被配置为将调用参数值对应的调用的结果返回给第一系统。

在一些实施例中,接口管理平台还包括:通证管理模块,被配置为获取第一系统发送的通证申请请求,以及向第一系统返回通证,其中,通证用于进行身份验证。

在一些实施例中,调用请求还包括通证,并且,通证管理模块进一步被配置为对调用请求中的通证进行身份验证,以便调用模块在身份验证通过的情况下发起对被调用接口的调用。

在一些实施例中,接口管理平台还包括:权限管理模块,被配置为获取第一系统发送的、对第二系统提供的接口的调用权限申请,以及为第一系统分配相应的调用权限。

在一些实施例中,权限管理模块进一步被配置为在获取调用请求后,根据接口标识,确定第一系统是否具备对被调用接口的调用权限,以便调用模块在第一系统具备调用权限的情况下发起对被调用接口的调用。

在一些实施例中,接口管理平台还包括:注册模块,被配置为接收第二系统发送的接口注册请求,其中,接口注册请求包括接口信息,为相应接口分配接口标识,以及存储接口信息和接口标识之间的对应关系。

在一些实施例中,接口信息包括域名和上下文。

根据本发明一些实施例的第三个方面,提供一种接口管理平台,包括:存储器;以及耦接至存储器的处理器,处理器被配置为基于存储在存储器中的指令,执行前述任意一种异构系统的调用方法。

根据本发明一些实施例的第四个方面,提供一种计算机可读存储介质,其上存储有计算机程序,其中,该程序被处理器执行时实现前述任意一种异构系统的调用方法。

上述发明中的一些实施例具有如下优点或有益效果。当异构的系统间需要调用接口时,发起调用的一方向接口管理平台发起调用请求,后续的调用处理逻辑由接口管理平台统一完成。从而,各个系统不需要对每个提供接口的系统单独开发调用逻辑,减轻了开发的工作量,提高了开发效率。并且,由于系统通过接口管理平台进行交互,因此提高了系统之间的独立性,降低了耦合程度。

通过以下参照附图对本发明的示例性实施例的详细描述,本发明的其它特征及其优点将会变得清楚。

附图说明

为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。

图1示出了根据本发明一些实施例的异构系统的调用方法的流程示意图。

图2a示例性地示出了相关技术中系统间调用的调用模型。

图2b示例性地示出了本发明中系统间调用的调用模型。

图3示出了根据本发明一些实施例的通证处理方法的流程示意图。

图4示出了具有身份验证流程的异构系统的调用方法的流程示意图。

图5示出了根据本发明一些实施例的权限申请方法的流程示意图。

图6示出了具有权限验证流程的异构系统的调用方法的流程示意图。

图7示出了根据本发明一些实施例的系统注册方法的流程示意图。

图8示出了根据本发明一些实施例的接口管理平台的结构示意图。

图9示出了根据本发明另一些实施例的接口管理平台的结构示意图。

图10示出了根据本发明又一些实施例的接口管理平台的结构示意图。

具体实施方式

下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。以下对至少一个示例性实施例的描述实际上仅仅是说明性的,决不作为对本发明及其应用或使用的任何限制。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。

除非另外具体说明,否则在这些实施例中阐述的部件和步骤的相对布置、数字表达式和数值不限制本发明的范围。

同时,应当明白,为了便于描述,附图中所示出的各个部分的尺寸并不是按照实际的比例关系绘制的。

对于相关领域普通技术人员已知的技术、方法和设备可能不作详细讨论,但在适当情况下,所述技术、方法和设备应当被视为授权说明书的一部分。

在这里示出和讨论的所有示例中,任何具体值应被解释为仅仅是示例性的,而不是作为限制。因此,示例性实施例的其它示例可以具有不同的值。

应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步讨论。

为了提高开发效率,本发明对接口管理平台进行升级,使其除了具备接口信息的存储、查询功能以外,还能够代理各个系统进行接口调用,以避免各个系统对调用逻辑进行重复开发。下面参考图1描述本发明异构系统的调用方法的实施例。

本发明实施例中的“第一系统”和“第二系统”的描述仅用于区分调用过程中的调用发起方和被调用方,其可以是接入接口管理平台的任意系统,其表述不对本发明起任何限制性作用。

图1示出了根据本发明一些实施例的异构系统的调用方法的流程示意图。如图1所示,该实施例的异构系统的调用方法包括步骤s102~s108。

在步骤s102中,接口管理平台获取第一系统发送的、对被调用接口的调用请求,其中,被调用接口是第二系统提供的接口,接口管理平台存储有第二系统提供的接口的接口信息,调用请求包括被调用接口的接口标识和调用参数值。

第一系统和第二系统为注册到接口管理平台的任意两个系统。在实施例中,第二系统是被调用方、用于提供被调用的接口,第一系统调用第二系统提供的接口。

当第一系统需要调用第二系统的接口时,不是直接向第二系统发起请求,而是向接口管理平台发起调用请求。后续的调用处理逻辑由接口管理平台统一完成。从而,各个平台减轻了调用逻辑的开发工作,提高了开发效率。

在一些实施例中,接口信息包括域名和上下文。例如,对于接口“www.abc.com/f1/?user=<xxx>&time=<xxx>”,“www.abc.com”为域名,“f1”为上下文,“user”和“time”为参数,参数后的等号后用于填入相应的参数值。接口信息还可以包括更多内容,例如接口文档等等。

在一些实施例中,接口管理平台为注册的接口分配接口标识,并存储接口信息和接口标识之间的对应关系。第一系统的开发者可以通过查询接口管理平台获得注册的接口的接口标识。

在步骤s104中,接口管理平台查询接口标识对应的接口信息。

在步骤s106中,接口管理平台根据接口信息和调用参数值,向第二系统发起对被调用接口的调用。

例如,第二系统提供的接口“www.abc.com/f1/?user=<xxx>&time=<xxx>”的接口标识为“api1”,则第一系统向接口平台发起例如包括{api1,user=”u1”,time=”111111”}的调用请求。接口管理平台根据“api1”查询到相应的接口后,将参数值填入,然后向第二系统发起调用请求“www.abc.com/f1/?user=u1&time=111111”。

在步骤s108中,接口管理平台将调用参数值对应的调用的结果返回给第一系统。

通过上述实施例,当异构的系统间需要调用接口时,发起调用的一方向接口管理平台发起调用请求,后续的调用处理逻辑由接口管理平台统一完成。从而,各个系统不需要对每个提供接口的系统单独开发调用逻辑,减轻了开发的工作量,提高了开发效率。并且,由于系统通过接口管理平台进行交互,因此提高了系统之间的独立性,降低了耦合程度。

图2a示例性地示出了相关技术中系统间调用的调用模型。如图2a所示,除了接口处理逻辑外,系统a和系统b还需要额外配备用于身份认证的通证(token)管理的处理逻辑、或者用于权限控制的访问鉴权的处理逻辑。这也进一步增加了开发的工作量。

在本发明的一些实施例中,接口管理平台统一集成了身份认证功能、权限控制功能的至少一种,从而每个系统不需要再额外开发这部分功能。本发明的一个系统间调用模型如图2b所示。接口管理平台通过接口代理服务与各个系统进行交互,并且具备调用处理逻辑、访问权限、管理token的功能,从而系统a和系统b无需再额外开发这三种功能。

下面参考图3描述本发明通证申请方法的实施例。

图3示出了根据本发明一些实施例的通证处理方法的流程示意图。如图3所示,该实施例的通证处理方法包括s302~s304。

在步骤s302中,接口管理平台获取第一系统发送的通证申请请求。

在步骤s304中,接口管理平台向第一系统返回通证,其中,该通证用于进行身份验证。第一系统在发起调用请求时可以附带通证,以便接口管理平台验证其身份。

通证用于表示调用请求方身份的合法性。此外,还可以带有时效性信息,接入到接口管理平台的各个系统例如通过周期性地申请通证,以确保获取的通证在有效期内。

通过上述实施例的方法,接口管理平台能够对各个系统的通证进行统一分配和管理,各个系统自身无需再开发相关逻辑,因此减少了重复的开发工作,提升了开发效率。

图4示出了具有身份验证流程的异构系统的调用方法的流程示意图。如图4所示,该实施例的调用方法包括步骤s402~s410。

在步骤s402中,接口管理平台获取第一系统发送的、对被调用接口的调用请求,其中,被调用接口是第二系统提供的接口,调用请求包括被调用接口的接口标识、调用参数值和第一系统的通证。

在步骤s404中,接口管理平台查询接口标识对应的接口信息。

在步骤s406中,接口管理平台对调用请求中的通证进行身份验证。

步骤s406可以在步骤s404之前、之后或同时执行。

在一些实施例中,当先执行步骤s406时,如果身份验证不通过,则不执行步骤s404。

在步骤s408中,在身份验证通过的情况下,接口管理平台根据接口信息和调用参数值,向第二系统发起对被调用接口的调用。

在步骤s410中,接口管理平台将调用参数值对应的调用的结果返回给第一系统。

通过上述实施例的方法,由接口管理平台执行对调用请求方的身份验证流程。从而,被调用接口的系统不需要额外开发身份验证逻辑,提高了系统开发的效率。并且,通过在调用的过程中基于通证进行身份验证,提高了安全性。

下面参考图5描述权限申请方法的实施例。

图5示出了根据本发明一些实施例的权限申请方法的流程示意图。如图5所示,该实施例的权限申请方法包括步骤s502~s504。

在步骤s502中,接口管理平台获取第一系统发送的、对第二系统提供的接口的调用权限申请。

在步骤s504中,接口管理平台为第一系统分配相应的调用权限。

通过上述实施例的方法,接口管理平台能够对各个系统的接口调用权限进行统一管理,各个系统自身无需再开发相关逻辑,因此减少了重复的开发工作,提升了开发效率。

图6示出了具有权限验证流程的异构系统的调用方法的流程示意图。如图6所示,该实施例的调用方法包括步骤s602~s610。

在步骤s602中,接口管理平台获取第一系统发送的、对被调用接口的调用请求,其中,被调用接口是第二系统提供的接口,调用请求包括被调用接口的接口标识和调用参数值。

在步骤s604中,接口管理平台查询接口标识对应的接口信息。

在步骤s606中,接口管理平台根据接口标识,确定第一系统是否具备对被调用接口的调用权限。

步骤s606可以在步骤s604之前、之后或同时执行。

在一些实施例中,当先执行步骤s606时,如果第一系统不具备对被调用接口的调用权限,则不执行步骤s604。

在步骤s608中,在第一系统具备调用权限的情况下,接口管理平台根据接口信息和调用参数值,向第二系统发起对被调用接口的调用。

在步骤s610中,接口管理平台将调用参数值对应的调用的结果返回给第一系统。

通过上述实施例的方法,由接口管理平台执行对调用请求方的调用权限验证流程。从而,被调用接口的系统不需要额外开发权限验证逻辑,提高了系统开发的效率。并且,通过在调用的过程中进行权限验证,提高了安全性。

在一些实施例中,接口管理平台开放注册功能,以便为需要上述各个实施例的功能的系统接入。下面参考图7描述本发明系统注册方法的实施例。

图7示出了根据本发明一些实施例的系统注册方法的流程示意图。如图7所示,该实施例的系统注册方法包括步骤s702~s706。

在步骤s702中,接口管理平台接收第二系统发送的接口注册请求,其中,接口注册请求包括接口信息。

在一些实施例中,系统在注册时提交接口文档以作为接口信息。接口文档的一个示例如下。

domain:www.api.com

url:/get

method:get

入参实体:

在步骤s704中,接口管理平台为相应接口分配接口标识。

在步骤s706中,接口管理平台存储接口信息和接口标识之间的对应关系。

从而,系统在提交接口信息时即可完成注册过程。在分配接口标识后,其他系统也可以通过查询接口管理平台获得该接口标识,并能够通过接口管理平台发起调用。

下面参考图8描述本发明接口管理平台的实施例。

图8示出了根据本发明一些实施例的接口管理平台的结构示意图。如图8所示,该实施例的接口管理平台800包括:获取模块8100,被配置为获取第一系统发送的、对被调用接口的调用请求,其中,被调用接口是第二系统提供的接口,接口管理平台存储有第二系统提供的接口的接口信息,调用请求包括被调用接口的接口标识和调用参数值;查询模块8200,被配置为查询接口标识对应的接口信息;调用模块8300,被配置为根据接口信息和调用参数值,向第二系统发起对被调用接口的调用;结果返回模块8400,被配置为将调用参数值对应的调用的结果返回给第一系统。

在一些实施例中,获取模块8100和结果返回模块8400集成为调用代理,调用代理用于与各个系统直接进行数据交互。

在一些实施例中,接口管理平台800还包括:通证管理模块8500,被配置为获取第一系统发送的通证申请请求,以及向第一系统返回通证,其中,通证用于进行身份验证。

在一些实施例中,调用请求还包括通证,并且,通证管理模块8500进一步被配置为对调用请求中的通证进行身份验证,以便调用模块8300在身份验证通过的情况下发起对被调用接口的调用。

在一些实施例中,接口管理平台800还包括:权限管理模块8600,被配置为获取第一系统发送的、对第二系统提供的接口的调用权限申请,以及为第一系统分配相应的调用权限。

在一些实施例中,权限管理模块8600进一步被配置为在获取调用请求后,根据接口标识,确定第一系统是否具备对被调用接口的调用权限,以便调用模块8300在第一系统具备调用权限的情况下发起对被调用接口的调用。

在一些实施例中,接口管理平台800还包括:注册模块8700,被配置为接收第二系统发送的接口注册请求,其中,接口注册请求包括接口信息,为相应接口分配接口标识,以及存储接口信息和接口标识之间的对应关系。

在一些实施例中,接口信息包括域名和上下文。

图9示出了根据本发明另一些实施例的接口管理平台的结构示意图。如图9所示,该实施例的接口管理平台90包括:存储器910以及耦接至该存储器910的处理器920,处理器920被配置为基于存储在存储器910中的指令,执行前述任意一个实施例中的异构系统的调用方法。

其中,存储器910例如可以包括系统存储器、固定非易失性存储介质等。系统存储器例如存储有操作系统、应用程序、引导装载程序(bootloader)以及其他程序等。

图10示出了根据本发明又一些实施例的接口管理平台的结构示意图。如图10所示,该实施例的接口管理平台100包括:存储器1010以及处理器1020,还可以包括输入输出接口1030、网络接口1040、存储接口1050等。这些接口1030,1040,1050以及存储器1010和处理器1020之间例如可以通过总线1060连接。其中,输入输出接口1030为显示器、鼠标、键盘、触摸屏等输入输出设备提供连接接口。网络接口1040为各种联网设备提供连接接口。存储接口1050为sd卡、u盘等外置存储设备提供连接接口。

本发明的实施例还提供一种计算机可读存储介质,其上存储有计算机程序,其特征在于,该程序被处理器执行时实现前述任意一种异构系统的调用方法。

本领域内的技术人员应当明白,本发明的实施例可提供为方法、系统、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用非瞬时性存储介质(包括但不限于磁盘存储器、cd-rom、光学存储器等)上实施的计算机程序产品的形式。

本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解为可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。

这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。

这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。

以上所述仅为本发明的较佳实施例,并不用以限制本发明,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

再多了解一些
当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1