一种处理请求的方法和装置制造方法及图纸

技术编号:38752340 阅读:10 留言:0更新日期:2023-09-09 11:18
本发明专利技术公开了一种处理请求的方法和装置,涉及计算机技术领域。该方法的一具体实施方式包括:拦截当前请求并匹配出所述当前请求携带的业务类型码对应的接口切换标识;将所述接口切换标识设置到系统上下文中,放行所述当前请求,以使所述当前请求访问代理接口;通过所述代理接口从所述系统上下文中获取所述接口切换标识,生成所述接口切换标识对应的目标接口实例名称,继而匹配出所述目标接口实例名称对应的目标接口实例,从而访问所述目标接口实例的方法以处理所述当前请求。该实施方式能够解决无法灵活地调整转发的参数或条件的技术问题。题。题。

【技术实现步骤摘要】
一种处理请求的方法和装置


[0001]本专利技术涉及计算机
,尤其涉及一种处理请求的方法和装置。

技术介绍

[0002]在对原有业务系统进行BPaaS(Business Platform As a Service,业务流程即服务)改造的时候,需要将相似的业务模块进行合并,提炼出一套能够适配所有业务的领域模型,请求按照领域模型的约定传参,再由领域服务统一收口处理。在实际的开发中发现,为了提高程序的扩展性,会在领域服务的底层再根据不同的垂直业务身份细化接口的能力,然后将领域服务处理后的中间结果传递给具体的垂直业务身份细化接口去进一步处理。目前,比较常见解决方式是上层接口根据入参进行判断和转发。
[0003]在实现本专利技术过程中,专利技术人发现现有技术中至少存在如下问题:
[0004]1)由于转发逻辑在领域层,每当有新的业务接口接入时,领域层都要随之变动,这违反了开闭原则,也增加了开发人员的工作量;
[0005]2)由于转发逻辑硬编码,导致无法灵活地调整转发的参数或条件。

技术实现思路

[0006]有鉴于此,本专利技术实施例提供一种处理请求的方法和装置,以解决无法灵活地调整转发的参数或条件的技术问题。
[0007]为实现上述目的,根据本专利技术实施例的一个方面,提供了一种处理请求的方法,包括:
[0008]拦截当前请求并匹配出所述当前请求携带的业务类型码对应的接口切换标识;
[0009]将所述接口切换标识设置到系统上下文中,放行所述当前请求,以使所述当前请求访问代理接口;
[0010]通过所述代理接口从所述系统上下文中获取所述接口切换标识,生成所述接口切换标识对应的目标接口实例名称,继而匹配出所述目标接口实例名称对应的目标接口实例,从而访问所述目标接口实例的方法以处理所述当前请求。
[0011]可选地,拦截当前请求并匹配出所述当前请求携带的业务类型码对应的接口切换标识,包括:
[0012]基于切面拦截当前请求,判断所述当前请求是否满足拦截条件;
[0013]若否,则放行所述当前请求,并访问所述当前请求对应的接口实例的方法以处理所述当前请求;
[0014]若是,则解析所述当前请求,从而匹配出所述当前请求携带的业务类型码对应的接口切换标识。
[0015]可选地,解析所述当前请求,从而匹配出所述当前请求携带的业务类型码对应的接口切换标识,包括:
[0016]解析所述当前请求携带的入参,判断所述入参是否为空;
[0017]若是,则对所述当前请求进行抛错;
[0018]若否,则从所述入参中获取业务类型码,从而匹配出所述业务类型码对应的接口切换标识。
[0019]可选地,从所述入参中获取业务类型码,从而匹配出所述业务类型码对应的接口切换标识,包括:
[0020]从所述入参中获取业务类型码,判断所述业务类型码是否为空;
[0021]若是,则对所述当前请求进行抛错;
[0022]若否,则从配置中心匹配出所述业务类型码对应的接口切换标识。
[0023]可选地,拦截当前请求并匹配出所述当前请求携带的业务类型码对应的接口切换标识之前,还包括:
[0024]对各个接口实例添加自定义注解;
[0025]获取添加了自定义注解的所述各个接口实例;
[0026]将所述各个接口实例放入工具类中,并对外暴露实例匹配接口。
[0027]可选地,生成所述接口切换标识对应的目标接口实例名称,包括:
[0028]根据所述接口切换标识和系统标识组装目标接口实例名称。
[0029]可选地,匹配出所述目标接口实例名称对应的目标接口实例,包括:
[0030]调用所述实例匹配接口,从而在所述工具类中匹配出所述目标接口实例名称对应的目标接口实例。
[0031]可选地,拦截当前请求并匹配出所述当前请求携带的业务类型码对应的接口切换标识之前,还包括:
[0032]在配置中心动态配置各个业务类型码对应的接口切换标识。
[0033]另外,根据本专利技术实施例的另一个方面,提供了一种处理请求的装置,包括:
[0034]拦截模块,用于拦截当前请求并匹配出所述当前请求携带的业务类型码对应的接口切换标识;
[0035]代理模块,用于将所述接口切换标识设置到系统上下文中,放行所述当前请求,以使所述当前请求访问代理接口;
[0036]处理模块,用于通过所述代理接口从所述系统上下文中获取所述接口切换标识,生成所述接口切换标识对应的目标接口实例名称,继而匹配出所述目标接口实例名称对应的目标接口实例,从而访问所述目标接口实例的方法以处理所述当前请求。
[0037]可选地,所述拦截模块还用于:
[0038]基于切面拦截当前请求,判断所述当前请求是否满足拦截条件;
[0039]若否,则放行所述当前请求,并访问所述当前请求对应的接口实例的方法以处理所述当前请求;
[0040]若是,则解析所述当前请求,从而匹配出所述当前请求携带的业务类型码对应的接口切换标识。
[0041]可选地,所述拦截模块还用于:
[0042]解析所述当前请求携带的入参,判断所述入参是否为空;
[0043]若是,则对所述当前请求进行抛错;
[0044]若否,则从所述入参中获取业务类型码,从而匹配出所述业务类型码对应的接口
切换标识。
[0045]可选地,所述拦截模块还用于:
[0046]从所述入参中获取业务类型码,判断所述业务类型码是否为空;
[0047]若是,则对所述当前请求进行抛错;
[0048]若否,则从配置中心匹配出所述业务类型码对应的接口切换标识。
[0049]可选地,还包括注解模块,用于:
[0050]拦截当前请求并匹配出所述当前请求携带的业务类型码对应的接口切换标识之前,对各个接口实例添加自定义注解;
[0051]获取添加了自定义注解的所述各个接口实例;
[0052]将所述各个接口实例放入工具类中,并对外暴露实例匹配接口。
[0053]可选地,所述处理模块还用于:
[0054]根据所述接口切换标识和系统标识组装目标接口实例名称。
[0055]可选地,所述处理模块还用于:
[0056]调用所述实例匹配接口,从而在所述工具类中匹配出所述目标接口实例名称对应的目标接口实例。
[0057]可选地,还包括配置模块,用于:
[0058]拦截当前请求并匹配出所述当前请求携带的业务类型码对应的接口切换标识之前,在配置中心动态配置各个业务类型码对应的接口切换标识。
[0059]根据本专利技术实施例的另一个方面,还提供了一种电子设备,包括:
[0060]一个或多个处理器;
[0061]存储装置,用于存储一个或多个程序,
[0062]当所述一个或多个程序被所述一个或多个处理器执行时,所述一个或多个处理器实现上述任本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种处理请求的方法,其特征在于,包括:拦截当前请求并匹配出所述当前请求携带的业务类型码对应的接口切换标识;将所述接口切换标识设置到系统上下文中,放行所述当前请求,以使所述当前请求访问代理接口;通过所述代理接口从所述系统上下文中获取所述接口切换标识,生成所述接口切换标识对应的目标接口实例名称,继而匹配出所述目标接口实例名称对应的目标接口实例,从而访问所述目标接口实例的方法以处理所述当前请求。2.根据权利要求1所述的方法,其特征在于,拦截当前请求并匹配出所述当前请求携带的业务类型码对应的接口切换标识,包括:基于切面拦截当前请求,判断所述当前请求是否满足拦截条件;若否,则放行所述当前请求,并访问所述当前请求对应的接口实例的方法以处理所述当前请求;若是,则解析所述当前请求,从而匹配出所述当前请求携带的业务类型码对应的接口切换标识。3.根据权利要求2所述的方法,其特征在于,解析所述当前请求,从而匹配出所述当前请求携带的业务类型码对应的接口切换标识,包括:解析所述当前请求携带的入参,判断所述入参是否为空;若是,则对所述当前请求进行抛错;若否,则从所述入参中获取业务类型码,从而匹配出所述业务类型码对应的接口切换标识。4.根据权利要求3所述的方法,其特征在于,从所述入参中获取业务类型码,从而匹配出所述业务类型码对应的接口切换标识,包括:从所述入参中获取业务类型码,判断所述业务类型码是否为空;若是,则对所述当前请求进行抛错;若否,则从配置中心匹配出所述业务类型码对应的接口切换标识。5.根据权利要求1所述的方法,其特征在于,拦截当前请求并匹配出所述当前请求携带的业务类型码对应的接口切换标识之前,还包括:对各个接口实例添加自定义注...

【专利技术属性】
技术研发人员:赵静
申请(专利权)人:北京京东世纪贸易有限公司
类型:发明
国别省市:

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

1