System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind()
【技术实现步骤摘要】
本申请涉及计算机,特别是涉及一种接口调用方法、系统、计算机设备和存储介质。
技术介绍
1、针对信息系统的搭建过程,系统间集成主要采用两种方式,一种是点对点直接对接,另一种是打造一个接口平台来处理请求路由、日志记录、身份认证、接口重发等事宜,但目前这两种方式普遍存在一些问题:
2、比如,基于接口平台的接口重发是有损重发,满足不了事务性较高的接口重发需求,其中,接口平台实现的接口重发只是简单地将请求参数根据请求地址再次发送给接收方,无法继续执行原调用方后续的逻辑代码,属于有损重发,对数据传输类接口影响不大,但对事务性较强的接口是行不通的,目前事务性较强接口的重发只能写在调用方,不能写在接口平台;比如,多租户模式下的外部接口无法标准化,对调用方代码侵入性较高。其中,多租户模式下,同样的接口因不同租户的供应商系统不一样,会存在地址、协议、参数结构和字段不一致的问题,地址不一致需要关注外部系统所属租户分别调用,协议、参数和字段不一致则要针对每个租户做大量的定制,导致调用方代码臃肿复杂,无法标准化。
技术实现思路
1、基于此,有必要针对上述技术问题,提供一种接口调用系统、方法、计算机设备和存储介质。
2、第一方面,本申请提供了一种接口调用方法,应用于第一方面所述的接口平台,所述方法包括:
3、接收接口调用方传输的接口调用指令,确定待调用的标准接口;
4、向所述接口调用方提供sdk工具,以便通过所述sdk工具捕捉所述接口调用方触发的调用事件;
>5、在所述调用事件不成功时,通过所述sdk工具原样无损重试所述调用事件,直至所述接口调用方成功调用所述目标标准接口。
6、在其中一个实施例中,所述接收接口调用方传输的接口调用指令,确定待调用的标准接口的步骤,包括:
7、根据接口调用指令的上下文,解析所述接口提供方的租户,选择对接对应所述租户的接口适配器;
8、通过所述接口适配器向对应租户的接口提供方发起接口调用请求,以确定返回待调用的标准接口。
9、在其中一个实施例中,所述根据接口调用指令的上下文,解析所述接口提供方的租户,选择对接对应所述租户的接口适配器的步骤,包括:
10、对所述接口调用指令进行解析,获取包括接口地址、协议、结构、字段在内的指令上下文内容;
11、根据所述指令上下文内容匹配所述接口提供方的租户,确定对应租户;
12、根据对应所述租户选择对接所述租户的接口适配器。
13、在其中一个实施例中,所述通过所述sdk工具捕捉所述接口调用方触发的调用事件的步骤,包括:
14、通过所述接口平台向所述接口调用方提供sdk工具;
15、通过所述sdk工具记录事务性方法日志,获取包括类、方法、参数以及执行结果在内的现场信息;
16、通过所述sdk工具接收所述现场信息,以便根据所述现场信息确定触发的调用事件。
17、在其中一个实施例中,所述在所述调用事件不成功时,通过所述sdk工具原样无损重试所述调用事件,直至所述接口调用方成功调用所述目标标准接口的步骤,包括:
18、根据所述现场信息判断当前调用事件是否调用成功,输出判断结果;
19、所述在所述调用事件不成功时,通过所述sdk工具原样无损重试所述调用事件,直至所述接口调用方成功调用所述目标标准接口的步骤,包括:
20、若判断结果中所述调用事件调用失败,则将所述现场信息传递给所述sdk工具,以便所述sdk工具通过反射机制,重新触发事务性方法进行原样无损重试调用事件。
21、在其中一个实施例中,所述将所述现场信息传递给所述sdk工具,以便所述sdk工具通过反射机制,重新触发事务性方法进行原样无损重试调用事件的步骤,包括:
22、按照预设策略手动或自动触发本次事务性方法的重试,调用所述sdk工具提供的回调函数,将记录的类、方法、参数在内的现场信息传递给所述回调函数,以触发反射机制,以便所述sdk工具重新触发事务性方法,将原参数传递给所述事务性方法,进行所述调用事件的原样无损重试。
23、在其中一个实施例中,所述方法还包括:
24、在所述调用事件成功时,所述接口调用方通过sdk或者restful协议调用所述接口平台确定的待调用的目标接口。
25、第二方面,本申请提供了一种接口调用系统,用于实现第一方面所述的接口调用方法,所述系统包括:接口调用方、接口平台以及接口提供方;
26、所述接口提供方提供接口地址、协议、结构、字段存在差异的多个租户;
27、所述接口平台集成多种接口适配器以及多种标准接口,所述接口适配器与所述接口提供方的对应租户对接,并且各所述接口适配器与对应的标准接口连接;
28、所述接口调用方根据对应租户,对接相应的标准接口。
29、第三方面,本申请提供了一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,所述处理器执行所述计算机程序时实现以下步骤:
30、接收接口调用方传输的接口调用指令,确定待调用的标准接口;
31、向所述接口调用方提供sdk工具,以便通过所述sdk工具捕捉所述接口调用方触发的调用事件;
32、在所述调用事件不成功时,通过所述sdk工具原样无损重试所述调用事件,直至所述接口调用方成功调用所述目标标准接口。
33、第四方面,本申请提供了一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现以下步骤:
34、接收接口调用方传输的接口调用指令,确定待调用的标准接口;
35、向所述接口调用方提供sdk工具,以便通过所述sdk工具捕捉所述接口调用方触发的调用事件;
36、在所述调用事件不成功时,通过所述sdk工具原样无损重试所述调用事件,直至所述接口调用方成功调用所述目标标准接口。
37、上述接口调用方法、系统、计算机设备和存储介质,上述接口调用方法中,由于采用了接收接口调用方传输的接口调用指令,确定待调用的标准接口;向所述接口调用方提供sdk工具,以便通过所述sdk工具捕捉所述接口调用方触发的调用事件;在所述调用事件不成功时,通过所述sdk工具原样无损重试所述调用事件,直至所述接口调用方成功调用所述目标标准接口。接口平台通过对接口调用方提供标准接口,屏蔽外部接口提供方的复杂性,接口调用方不需要处理各提供方不一致的问题,也不需要关注提供方的具体地址,实现接口调用方的解耦和减负。接口平台提供无损的事务性接口重发机制,保证接口重发后各系统的数据完整性和逻辑正确性。
本文档来自技高网...【技术保护点】
1.一种接口调用方法,应用于接口平台,其特征在于,所述方法包括:
2.根据权利要求1所述的接口调用方法,其特征在于,所述接收接口调用方传输的接口调用指令,确定待调用的标准接口的步骤,包括:
3.根据权利要求2所述的接口调用方法,其特征在于,所述根据接口调用指令的上下文,解析所述接口提供方的租户,选择对接对应所述租户的接口适配器的步骤,包括:
4.根据权利要求1所述的接口调用方法,其特征在于,所述通过所述SDK工具捕捉所述接口调用方触发的调用事件的步骤,包括:
5.根据权利要求1所述的接口调用方法,其特征在于,所述在所述调用事件不成功时,通过所述SDK工具原样无损重试所述调用事件,直至所述接口调用方成功调用所述目标标准接口的步骤之前,还包括:
6.根据权利要求5所述的接口调用方法,其特征在于,所述将所述现场信息传递给所述SDK工具,以便所述SDK工具通过反射机制,重新触发事务性方法进行原样无损重试调用事件的步骤,包括:
7.根据权利要求1~6任一项所述的接口调用方法,其特征在于,所述方法还包括:
8
9.一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,其特征在于,所述处理器执行所述计算机程序时实现权利要求1至7中任一项所述方法的步骤。
10.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1至7中任一项所述的方法的步骤。
...【技术特征摘要】
1.一种接口调用方法,应用于接口平台,其特征在于,所述方法包括:
2.根据权利要求1所述的接口调用方法,其特征在于,所述接收接口调用方传输的接口调用指令,确定待调用的标准接口的步骤,包括:
3.根据权利要求2所述的接口调用方法,其特征在于,所述根据接口调用指令的上下文,解析所述接口提供方的租户,选择对接对应所述租户的接口适配器的步骤,包括:
4.根据权利要求1所述的接口调用方法,其特征在于,所述通过所述sdk工具捕捉所述接口调用方触发的调用事件的步骤,包括:
5.根据权利要求1所述的接口调用方法,其特征在于,所述在所述调用事件不成功时,通过所述sdk工具原样无损重试所述调用事件,直至所述接口调用方成功调用所述目标标准接口的步骤之前,还包括:
6.根据...
【专利技术属性】
技术研发人员:李承龙,陈琦,周凌波,李政蒿,程胜儒,
申请(专利权)人:中科云谷科技有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。