一种应用接口管理方法和装置制造方法及图纸

技术编号:14930676 阅读:71 留言:0更新日期:2017-03-31 12:34
本申请的目的是一种应用接口管理方法和装置,其中,所述方法包括:拦截对应用接口的调用请求;获取所述应用接口的注解信息;根据所述注解信息和所述调用请求对所述应用接口的调用进行管理。与现有技术相比,本申请提供的应用接口管理方法和装置,通过在已有代码上增加注解信息的方式提供调用流程管理所需要的信息,不需要大规模更改现有代码或者对代码主体逻辑进行改动,通过独立增设的应用接口管理代码根据注解信息进行处理,即可实现对每个应用接口的调用管理,从而减少代码维护带来的成本开销。

【技术实现步骤摘要】

本申请涉及计算机领域,尤其涉及一种应用接口管理方法和装置
技术介绍
现有的信息系统除了完成自身服务的需求,一般还需要设定对外开放的接口,以实现通过API(应用程序编程接口,ApplicationProgrammingInterface)的方式对外提供服务,对外提供服务过程中伴随着相应指标数据的返回;其中,指标一般是指接口调用所返回的数据类别。为了数据的安全,一般需要对调用方的身份进行检验,同时需要根据调用方的身份对返回的指标粒度进行控制。现有技术在进行调用方鉴权和指标过滤时,一般通过在接口的具体实现代码上增加相应的逻辑,进行硬编码。这种做法在项目前期可以达到较好的维护,但到了后期,由于所开的接口过多,当修改现有代码逻辑的时候,无法保证现有服务的稳定。同时,对于之前没有进行接口管理的代码,如果需要增加该功能,则涉及到大规模代码的修改。
技术实现思路
本申请的一个目的是提供一种应用接口管理方法和装置,以解决在不大规模更改现有代码或不对代码主体逻辑进行改动时,实现应用接口调用管理的问题。根据本申请的一个方面,提供了一种应用接口管理方法,其中,所述方法包括:拦截对应用接口的调用请求;获取所述应用接口的注解信息;根据所述注解信息和所述调用请求对所述应用接口的调用进行管理。根据本申请的另一个方面,提供了一种应用接口管理装置,其中,所述装置包括:拦截模块,用于拦截对应用接口的调用请求;获取模块,用于获取所述应用接口的注解信息;调用管理模块,用于根据所述注解信息和所述调用请求对所述应用接口的调用进行管理。与现有技术相比,本申请提供的应用接口管理方法和装置,由于注解信息的增加不会对应用接口的已有代码的执行逻辑造成影响,不需要大规模更改现有代码或者对代码主体逻辑进行改动,只需要在现有应用接口上增加注解信息,并相应的引入额外的处理逻辑,就可以对开放出的每个接口进行不同粒度的接口管理,从而减少代码维护带来的价值开销。附图说明通过阅读参照以下附图所作的对非限制性实施例所作的详细描述,本申请的其它特征、目的和优点将会变得更明显:图1示出根据本申请一个方面的应用接口管理方法的流程示意图;图2示出根据本申请又一个方面的应用接口管理方法的流程示意图;图3示出根据本申请一个方面的应用接口管理装置的结构示意图;图4示出根据本申请又一个方面的应用接口管理装置的结构示意图。附图中相同或相似的附图标记代表相同或相似的部件。具体实施方式下面结合附图对本申请作进一步详细描述。图1示出根据本申请一个方面的应用接口管理方法的流程示意图。如图1所示,该应用接口管理方法包括:步骤S101,拦截对应用接口的调用请求;步骤S102,获取所述应用接口的注解信息;步骤S103,根据所述注解信息和所述调用请求对所述应用接口的调用进行管理。其中,应用接口指API接口。API接口预先添加有注解信息,例如Java语言提供的Annotation注解信息,注解信息内包含有对API接口调用的管理信息,例如调用鉴权、指标过滤的管理信息。当接收到对API接口的调用请求时,拦截调用请求并获取该API接口的注解信息,然后根据注解信息内的调用鉴权信息进行调用鉴权管理,对API接口的调用方,即服务使用方,进行身份控制;或者根据注解信息内的指标过滤信息,对API接口返回的指标粒度进行控制管理。可以通过AOP(AspectOrientedProgramming,面向切面编程)技术,对注解信息进行处理,以控制API接口的调用。注解信息的增加不会对应用接口的已有代码的执行逻辑造成影响,因此,对应用接口调用进行管理时,不需要大规模更改现有代码或者对代码主体逻辑进行改动,仅需要通过独立增设的应用接口管理代码,根据注解信息进行处理即可实现对每个应用接口的调用管理,从而减少代码维护带来的价值开销,例如避免因主体逻辑的修改而带来的服务失效。可选地,所述注解信息包含调用鉴权信息;根据所述注解信息和所述调用请求对所述应用接口的调用进行管理还包括:根据所述调用鉴权信息对所述调用请求进行调用鉴权;在所述调用鉴权通过后,执行对所述应用接口的调用;在所述调用鉴权没有通过时,返回错误提示信息。在此,调用鉴权分为两种结果,调用鉴权通过,此时执行对API接口的调用;调用鉴权没有通过,例如调用者的身份不符合API接口的调用权限,此时根据返回值类型,包装错误提示信息后直接返回。可选地,根据所述注解信息和所述调用请求对所述应用接口的调用进行管理还包括:在进行调用鉴权之前,判断是否需要进行调用鉴权;当不需要进行调用鉴权时,直接执行对所述应用接口的调用。在此,如果预先设定不需要对该API接口的调用进行调用鉴权时,对于该API接口的调用者,不进行调用鉴权,直接执行API接口调用。可选地,所述注解信息还包含指标过滤信息;根据所述注解信息和所述调用请求对所述应用接口的调用进行管理还包括:根据所述指标过滤信息对执行所述应用接口调用后的返回结果进行指标过滤;将经过所述指标过滤的返回结果进行返回。在此,当API接口预设为需要指标过滤时,可以将直接执行API接口调用而获取的返回结果,或者,将调用鉴权通过后执行API接口调用而获取的返回结果,经过指标过滤后再进行返回。可选地,根据所述注解信息和所述调用请求对所述应用接口的调用进行管理还包括:在进行指标过滤之前,判断是否需要进行指标过滤;当不需要进行指标过滤时,直接对执行所述应用接口调用后的返回结果进行返回。在此,当API接口预设为不需要指标过滤时,可以将直接执行API接口调用而获取的返回结果,或者,将调用鉴权通过后执行API接口调用而获取的返回结果,不进行指标过滤,直接进行返回并结束整个流程。可选地,所述方法还包括:对所述应用接口添加所述注解信息;创建对所述注解信息进行处理的类。优选地,可以通过面向切面的方式创建对所述注解信息进行处理的类。在此,注解信息采用Java语言提供的Annotation机制预先进行添加,通过Annotation增加的注解信息不会对已有代码的执行逻辑造成影响。面向切面的方式指AOP(面向切面编程,AspectOrientedProgramming),即通过预编译方式和运行期动态代理实现程序功能的统一维护的一种技术。用于对注解信息进行处理的类是新增加的,不需要更改现有应用接口的具体实现逻辑类。图2示出根据本申请又一个方面的应用接口管理方法的流程示意图。如图2所示,该应用接口调用方法包括:步骤S201,对应用接口添加所述注解信息。在此,注解信息采用Java语言提供的Annotation机制进行添加,通过Annotation增加的注解信息不会对已有代码的执行逻辑造成影响。注解信息包含调用鉴权信息和指标过滤信息,此外,还可以包含是否需要进行接口管理的信息,例如,是否需要对该API接口进行调用鉴权的信息,或者,是否需要对调用该API接口的返回结果进行指标过滤的信息。其中,调用鉴权信息可以包含鉴权处理对象等信息,指标过滤信息可以包含指标过滤对象等信息。此处,指标可以指接口调用API接口所返回的数据类别。步骤S202,创建对所述注解信息进行处理的类。在此,可以通过面向切面的方式创建对所述注解信息进行处理的类,面向切面的方式指AOP方式。用于对注解本文档来自技高网...
一种应用接口管理方法和装置

【技术保护点】
一种应用接口管理方法,其中,所述方法包括:拦截对应用接口的调用请求;获取所述应用接口的注解信息;根据所述注解信息和所述调用请求对所述应用接口的调用进行管理。

【技术特征摘要】
1.一种应用接口管理方法,其中,所述方法包括:拦截对应用接口的调用请求;获取所述应用接口的注解信息;根据所述注解信息和所述调用请求对所述应用接口的调用进行管理。2.根据权利要求1所述的方法,其中,所述注解信息包含调用鉴权信息;根据所述注解信息和所述调用请求对所述应用接口的调用进行管理还包括:根据所述调用鉴权信息对所述调用请求进行调用鉴权;在所述调用鉴权通过后,执行对所述应用接口的调用。3.根据权利要求2所述的方法,其中,根据所述注解信息和所述调用请求对所述应用接口的调用进行管理还包括:在所述调用鉴权没有通过时,返回错误提示信息。4.根据权利要求2所述的方法,其中,根据所述注解信息和所述调用请求对所述应用接口的调用进行管理还包括:在进行调用鉴权之前,判断是否需要进行调用鉴权;当不需要进行调用鉴权时,直接执行对所述应用接口的调用。5.根据权利要求1所述的方法,其中,所述注解信息还包含指标过滤信息;根据所述注解信息和所述调用请求对所述应用接口的调用进行管理还包括:根据所述指标过滤信息对执行所述应用接口调用后的返回结果进行指标过滤;将经过所述指标过滤的返回结果进行返回。6.根据权利要求5所述的方法,其中,根据所述注解信息和所述调用请求对所述应用接口的调用进行管理还包括:在进行指标过滤之前,判断是否需要进行指标过滤;当不需要进行指标过滤时,直接对执行所述应用接口调用后的返回结果进行返回。7.根据权利要求1至6中任一项所述的方法,其中,所述方法还包括:对所述应用接口添加所述注解信息;创建对所述注解信息进行处理的类。8.根据权利要求7所述的方法,其中,所述创建对所述注解信息进行处理的类还包括:通过面向切面的方式创建对所述注解信息进行处理的类。9.一种应用...

【专利技术属性】
技术研发人员:陈晓丹
申请(专利权)人:阿里巴巴集团控股有限公司
类型:发明
国别省市:开曼群岛;KY

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

1