System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind() 一种API服务平台的接口路由方法和系统技术方案_技高网

一种API服务平台的接口路由方法和系统技术方案

技术编号:40104482 阅读:6 留言:0更新日期:2024-01-23 18:12
本发明专利技术提出了一种API服务平台的接口路由方法和系统,该方法运行于API服务平台,接收调用方下发的接口身份认证信息;在身份认证通过后,检查调用方是否具有接口过滤器的使用权限;在确定具有使用权限时,配置接口的灰度规则;按照配置的灰度规则执行路由分发进行请求代理;请求代理利用相对应的客户端执行请求转发,且对请求数据和返回数据做规范约定,保证转发的数据格式与相应的请求代理服务要求的数据格式一致。基于该方法,还提出了一种API服务平台的接口路由系统。本发明专利技术调用方与提供方完全解耦,数据接口提供方、调用方互相不需要做沟通和约束即可实现数据接口交易,通过接口对接,即可自动适配、分发,实现所有功能的调用。

【技术实现步骤摘要】

本专利技术属于通信路由转发,特别涉及一种api服务平台的接口路由方法和系统。


技术介绍

1、api即应用程序接口(application programming interface),为程序开发人员在编程时使用,通过调用接口获取系统提供的服务或资源。

2、现有api服务主要使用不同的统一资源定位符区别不同的接口功能,或者支持方法名路由,但是路由规则不够灵活。目前普遍的路由方法为:根据接口地址或者rest方式区分请求资源,根据path路径或者get、post、put、delete等http method做资源路由。但是使用url区别不同的接口,平台方维护入口较多,调用方开发量较大,对于每个接口,开放的调用方都需要投入较多开发资源。对于一个接口想要区分不同的调用方,需要在业务逻辑内加入判断逻辑代码,获取用户身份信息并进行区别处理业务,没有统一的灰度机制。一个接口即是一个版本,无法实现一个接口多版本同时服务的机制。


技术实现思路

1、为了解决上述技术问题,本专利技术提出了一种api服务平台的接口路由方法和系统。数据接口提供方、调用方互相不需要做沟通和约束即可实现数据接口交易。

2、为实现上述目的,本专利技术采用以下技术方案:

3、一种api服务平台的接口路由方法,运行于api服务平台,包括以下步骤:

4、接收调用方下发的api接口身份认证信息;在身份认证通过后,检查调用方是否具有api接口过滤器的使用权限;

5、在确定具有使用权限时,配置api接口的灰度规则;按照配置的灰度规则执行路由分发进行请求代理;

6、请求代理利用相对应的客户端执行请求转发,且对请求数据和返回数据做了规范约定,保证转发的数据格式与相应的请求代理服务要求的数据格式一致。

7、进一步的,所述接收调用方下发的api接口身份认证信息之前,api服务平台为调用方依次下发身份认证应用、配置灰度规则和配置路由转发规则;

8、所述身份认证应用包括api接口的地址信息和秘钥;

9、所述灰度规则支持多行,每一行灰度规则配置内容包括:调用方应用地址、接口编码和灰度目标版本;

10、所述路由转发支持多行,每行配置的内容包括接口名、服务名、服务类型、服务地址和端口。

11、进一步的,api服务平台在每次业务接口调用时包含3个header,具体包括签名、签名类型和身份认证的令牌。

12、进一步的,所述接收调用方下发的api接口身份认证信息的过程包括:根据下发的秘钥获取在计算机身份认证中的令牌,接收方调用方下发的请求,其中请求的数据包括公共请求参数和请求参数;响应的数据包括公共响应参数和响应参数。

13、进一步的,所述按照配置的灰度规则执行路由分发进行请求代理的详细过程包括:使用路由分发器进行目标服务分发,每个方法路由规则根据配置的服务类型字段使用不同的转接器进行请求代理。

14、进一步的,所述请求代理包括http转接器、同构微服务转接器和异构微服务代理转接器。

15、进一步的,所述http转接器使用http客户端根据服务地址字段进行http请求发送,请求数据按照接口平台标准公共请求参数进行封装和校验,且返回的数据仅做公共返回体封装,不做数据格式转化和校验。

16、进一步的,所述同构微服务转接器使用微服务负载均衡器ribbon根据服务名字段,获取一个服务实例,然后使用feign客户端进行请求转发,对请求体和返回体均做公共请求参数封装、数据格式转化和校验。

17、进一步的,所述异构微服务代理转接器使用http客户端根据服务地址字段进行http请求发送,与http转接器相比额外对数据内容做格式化和校验,用于实现请求体的格式、返回体格式均与同构微服务规范完全一致。

18、本专利技术还提出了一种api服务平台的接口路由系统,包括验证模块、配置模块和转发模块;

19、所述验证模块用于接收调用方下发的api接口身份认证信息;在身份认证通过后,检查调用方是否具有api接口过滤器的使用权限;

20、所述配置模块用于在确定具有使用权限时,配置api接口的灰度规则;按照配置的灰度规则执行路由分发进行请求代理;

21、所述转发模块用于请求代理利用相对应的客户端执行请求转发,且对请求数据和返回数据做了规范约定,保证转发的数据格式与相应的请求代理服务要求的数据格式一致。

22、
技术实现思路
中提供的效果仅仅是实施例的效果,而不是专利技术所有的全部效果,上述技术方案中的一个技术方案具有如下优点或有益效果:

23、本专利技术提出了一种api服务平台的接口路由方法和系统,该方法运行于api服务平台,接收调用方下发的api接口身份认证信息;在身份认证通过后,检查调用方是否具有api接口过滤器的使用权限;在确定具有使用权限时,配置api接口的灰度规则;按照配置的灰度规则执行路由分发进行请求代理;请求代理利用相对应的客户端执行请求转发,且对请求数据和返回数据做了规范约定,保证转发的数据格式与相应的请求代理服务要求的数据格式一致。基于一种api服务平台的接口路由方法,还提出了一种api服务平台的接口路由系统。本专利技术接口平台调用方与接口功能提供方完全解耦,众多的数据接口提供方、调用方互相不需要做沟通和约束即可实现数据接口交易,通过简单的一个接口对接,就可以自动适配、分发,实现所有功能的调用。

24、本专利技术中接口功能的供应方,可以对接口进行版本管理、灰度管理,实现复杂的上线策略,不同客户服务策略,如同一个接口,对部分客户升级到新版本。对部分客户仅需要修改一个请求的版本字段,即可升级到新的服务功能,节省客户升级难度。

本文档来自技高网...

【技术保护点】

1.一种API服务平台的接口路由方法,其特征在于,运行于API服务平台,包括以下步骤:

2.根据权利要求1所述的一种API服务平台的接口路由方法,其特征在于,所述接收调用方下发的API接口身份认证信息之前,API服务平台为调用方依次下发身份认证应用、配置灰度规则和配置路由转发规则;

3.根据权利要求1所述的一种API服务平台的接口路由方法,其特征在于,API服务平台在每次业务接口调用时包含3个header,具体包括签名、签名类型和身份认证的令牌。

4.根据权利要求1所述的一种API服务平台的接口路由方法,其特征在于,所述接收调用方下发的API接口身份认证信息的过程包括:根据下发的秘钥获取在计算机身份认证中的令牌,接收方调用方下发的请求,其中请求的数据包括公共请求参数和请求参数;响应的数据包括公共响应参数和响应参数。

5.根据权利要求1所述的一种API服务平台的接口路由方法,其特征在于,所述按照配置的灰度规则执行路由分发进行请求代理的详细过程包括:使用路由分发器进行目标服务分发,每个方法路由规则根据配置的服务类型字段使用不同的转接器进行请求代理。

6.根据权利要求5所述的一种API服务平台的接口路由方法,其特征在于,所述请求代理包括http转接器、同构微服务转接器和异构微服务代理转接器。

7.根据权利要求6所述的一种API服务平台的接口路由方法,其特征在于,所述http转接器使用http客户端根据服务地址字段进行http请求发送,请求数据按照接口平台标准公共请求参数进行封装和校验,且返回的数据仅做公共返回体封装,不做数据格式转化和校验。

8.根据权利要求6所述的一种API服务平台的接口路由方法,其特征在于,所述同构微服务转接器使用微服务负载均衡器ribbon根据服务名字段,获取一个服务实例,然后使用feign客户端进行请求转发,对请求体和返回体均做公共请求参数封装、数据格式转化和校验。

9.根据权利要求6所述的一种API服务平台的接口路由方法,其特征在于,所述异构微服务代理转接器使用http客户端根据服务地址字段进行http请求发送,与http转接器相比额外对数据内容做格式化和校验,用于实现请求体的格式、返回体格式均与同构微服务规范完全一致。

10.一种API服务平台的接口路由系统,其特征在于,包括验证模块、配置模块和转发模块;

...

【技术特征摘要】

1.一种api服务平台的接口路由方法,其特征在于,运行于api服务平台,包括以下步骤:

2.根据权利要求1所述的一种api服务平台的接口路由方法,其特征在于,所述接收调用方下发的api接口身份认证信息之前,api服务平台为调用方依次下发身份认证应用、配置灰度规则和配置路由转发规则;

3.根据权利要求1所述的一种api服务平台的接口路由方法,其特征在于,api服务平台在每次业务接口调用时包含3个header,具体包括签名、签名类型和身份认证的令牌。

4.根据权利要求1所述的一种api服务平台的接口路由方法,其特征在于,所述接收调用方下发的api接口身份认证信息的过程包括:根据下发的秘钥获取在计算机身份认证中的令牌,接收方调用方下发的请求,其中请求的数据包括公共请求参数和请求参数;响应的数据包括公共响应参数和响应参数。

5.根据权利要求1所述的一种api服务平台的接口路由方法,其特征在于,所述按照配置的灰度规则执行路由分发进行请求代理的详细过程包括:使用路由分发器进行目标服务分发,每个方法路由规则根据配置的服务类型字段使用不同的转接器进行请求代理。

6.根据权利要...

【专利技术属性】
技术研发人员:张仁田徐伟王继瑞
申请(专利权)人:山东省征信有限公司
类型:发明
国别省市:

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

1