【技术实现步骤摘要】
接口访问请求处理方法、API网关、服务器及系统
[0001]本专利技术实施例涉及一种接口访问请求处理方法、API网关、服务器及系统。
技术介绍
[0002]在Dubbo微服务面向接口编程模式下,一个微服务模块中的一个服务由一个Service接口类表示(比如用户服务UserService),一个业务接口由这个接口类中的一个方法表示(比如userInfo方法表示查询用户的详情)。
[0003]随着业务的不断扩张,现有的Dubbo微服务规模也越来越大,在此之前常规做法是由人专门开发维护一个网关项目,将不同微服务的接口引入该项目,对外提供HTTP服务,对请求JSON数据进行反序列化转换为需要的数据类型然后调用后端微服务接口,对方法返回结果再序列化成JSON返回给请求者;但是当后端某一个微服务的接口新增或变更时该项目都需要频繁进行修改、构建、部署,所有的操作都需要人为编码处理,随着规模增大也更难以维护。
技术实现思路
[0004]为了解决现有技术中的问题,本专利技术提供了一种接口访问请求处理方法、API网关、服
【技术保护点】
【技术特征摘要】
1.一种接口访问请求处理方法,其特征在于,包括:接收前端发起的接口访问请求;其中,所述接口访问请求包括微服务的模块标识、服务标识、方法标识及请求参数;根据所述模块标识将所述接口访问请求路由到服务器与所述模块标识对应的微服务模块,以供所述服务器进一步根据所述服务标识在所述微服务模块中查找对应的服务实例,以及根据所述方法标识在所述服务实例中获取对应的方法及参数定义列表,并基于所述请求参数及所述参数定义列表对所述方法进行方法调用,从而获取接口访问请求处理结果;接收所述服务器返回的所述接口访问请求处理结果,并将所述接口访问请求处理结果发送给所述前端。2.根据权利要求1所述的接口访问请求处理方法,其特征在于,所述接收前端发起的接口访问请求,包括:接收前端基于HTTP接口协议发起的接口访问请求;其中,所述HTTP接口协议的协议格式包括所述模块标识、所述服务标识及所述方法标识,以及所述请求参数存在于所述HTTP接口协议的所述协议格式或所述接口访问请求对应的请求体中。3.根据权利要求1所述的接口访问请求处理方法,其特征在于,所述请求参数的名称和与所述接口访问请求对应的所述服务实例中的方法的参数名一致。4.一种接口访问请求处理方法,其特征在于,包括:获取API网关发送的来自于前端的接口访问请求;其中,所述接口访问请求包括微服务的模块标识、服务标识、方法标识及请求参数;根据所述服务标识在与所述模块标识对应的微服务模块中查找对应的服务实例,以及根据所述方法标识在所述服务实例中获取对应的方法及参数定义列表,并基于所述请求参数及所述参数定义列表对所述方法进行方法调用,从而获取接口访问请求处理结果;将所述接口访问请求处理结果经由API网关发送给所述前端。5.根据权利要求4所述的接口访问请求处理方法,其特征在于,所述基于所述请求参数及所述参数定义列表对所述方法进行方法调用,具体包括:根据所述参数定义列表获取所述方法的参数名和参数类型;将所述请求参数中的参数值转换成与所述参数定义列表中的参数类型对应的值对象;根据所述参数名、所述参数类型及所述值对象实例化出对应的参数对象;基于所述参数对象通过java的反射机制对所述方法执行方法调用。6.一种API网关,其特征在于,包括:请求接收单元,用于:接收前端发起的接口访问请求;其中,所述接口访问请求包括微服务的模块标识、服务标识、方法标识及请求参数;路由单元,用于:根据所述模...
【专利技术属性】
技术研发人员:唐丽玲,
申请(专利权)人:北京房江湖科技有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。