随着技术的不断发展,系统间的交互越来越依赖API,用户可以根据服务接口信息深入了解所需要的产品,这样不仅可以使大众快速理解产品作用,也可以进行更广泛的推广。
ESB中API管理模块下API服务接口功能可以注册、导入、配置服务,支持新增、添加接口,为了方便外部查看访问,需要对外提供查询服务列表、查询服务配置、查询接口配置三种接口,API安全可以对服务接口和流程配置安全报警策略,发送报警信息等。
本文档是介绍SMC控制台中API管理模块,对其模块中的功能进行梳理,方便快速了解API管理模块中的功能。
ESB对API的支持主要体现在API管理、API安全和API集成,其中API管理又细分为API划分、创建和监控。
与一般的API管理不同的是,公司的API是基于ESB平台管理的,因此在管理功能上会受到ESB一定程度的影响。
API的本质是应用程序编程接口,目的是保障系统间的交互功能,在这方面公司也有所考虑,通过对ESB平台来实现API网关的注册及管理,这样就可以复用ESB的集成功能,保障API的系统对接功能。
API管理的核心功能包含API生命周期管理、API版本管理、API安全管理,其他辅助功能有API运行监控、调用记录、参数统计等,公司的API管理包括API接入、API注册、API调用。API的版本管理是通过API的路径和版本记录来实现的,API安全支持不同类型的认证方式、黑白名单等。
API管理模块中的功能,基础功能有应用管理、API分组、API服务以及API代理,安全预警方面有API标签、API安全,还有API超市模块。
应用管理可以进行应用配置和安全管理,API服务管理可以对注册服务、配置服务、代理服务进行操作,配置接口等;API安全管理可以对流程或接口配置安全报警机制,API代理可以对注册服务进行代理,API标签中有微信、短信、邮件。API超市分为三类API分组查询、API应用查询、API调用查询。
下面对API管理中的应用管理、API分组、API服务、API代理等模块功能进行介绍说明。
应用管理模块:支持新增、编辑、复制、查看、删除操作,可以根据系统编码和系统名称进行查询,其功能是对各个应用系统进行管理。列表页面如下:
表单页面有生成密钥功能,可以生成公钥和私钥,进行加密和解密,具体表单页面如下:
安全管理支持权限管理,可以根据标准角色、实际角色、用户列表和群组列表来授权。
API分组:支持新增、编辑、迁移、删除分组等操作,对服务进行分组管理。列表页面如图所示:
安全管理支持权限管理,可以根据标准角色、实际角色、用户列表和群组列表来分配权限。
API服务:支持导入、注册、配置、编辑、复制、启用、禁用、发布、反发布、迁移、删除、导入、导出等功能,对服务进行管理。页面如图所示:
API服务功能是将各个系统服务在ESB进行管理的功能,管理的方式包括导入、注册和配置。
导入:点击“导入”,弹出选择列表,可以选择ESB开发的服务,点击选择即可新增服务:
注册:点击“注册”进入注册页面,在页面内输入其他业务系统提供的服务地址。点击“解析”后,将服务的具体操作解析出来,同时自动完成保存工作。添加服务与应用系统创建关联,应用系统显示的列表在应用管理里进行配置:
配置:配置页面,可以添加编码、名称后配置一个服务:
注意:在API服务中新增配置服务后,服务中无接口需要手动添加接口。可以根据需求新增单个接口或批量新增多个接口。
API列表页面如下,支持添加(注册、REST、无法解析的服务)、新增(配置的服务)、编辑、查看、删除操作,对服务接口进行管理:
接口基本信息页面如下,支持设置Headers、查看安全操作:
入参出参设置页面如下,支持插入样例解析、新增、编辑、删除操作:
插入模板(入参、出参)页面,支持解析回显到设置(入参、出参)页面:
JOSN格式:
XML格式:
PathParam格式:
拦截器配置列表页面如下,支持新增、编辑、复制、查看、删除操作,对拦截器进行管理:
拦截器配置表单页面如下:
点击新增,拦截器配置页面如下:
API代理:支持添加、编辑、复制、查看、刷新、查看注册、代理版本、迁移、禁用操作,对代理的服务进行管理。列表页面如下:
表单页面如下,跳转到API服务代理信息页面:
注意:服务中只有注册服务和配置服务可以进行代理操作,导入服务是内置服务,无法进行代理。
导入服务中是否代理按键为灰色,无法进行选择。
下面关于API管理模块中与安全、报警相关的配置进行注意事项说明,加深对于模块功能的理解。
API标签:支持新增、编辑、迁移、删除标签树操作,对服务的安全报警进行管理。列表页面如图所示:
安全管理支持权限管理,可以根据标准角色、实际角色、用户列表和群组列表来分配权限。
API安全:支持编辑、查看、刷新操作,对服务进行安全管理。列表页面如下:
表单页面如下,支持调用系统选择、访问上限、认证方式选择、IP限定白名单、黑名单:
报警设置页面如下,支持重试、报警、失败报警策略管理:
点击“配置”按钮,接口配置页面如下:
对于配置完报警服务进行验证报警发送消息时,需要注意在系统资源下的共享资源配置中发送邮箱。
在属性配置中的全局变量配置接收邮箱,确保可以接收邮件,配置如图所示:
下面对API超市中的API分组查询、API应用查询和API调用查询三个模块进行页面和功能介绍。
API分组查询,以API分组方式对服务接口进行归类,列表页面如下:
点击一条可以查看基本信息页面,显示服务接口信息:
HTTP调用界面,显示服务和接口信息,可以进行调用操作:
CURL调用页面,显示接口信息,支持调用:
JAVA调用页面,显示代码信息,支持复制代码、下载工程、调用:
API应用查询,以应用系统方式对服务接口进行归类,列表页面如下:
点击一条可以查看基本信息页面,显示服务接口信息,同样可以进行三种方式的调用HTTP调用、CURL调用、JAVA调用:
API调用查询,需要在API安全中的接口配置调用系统,才能在API调用查询看到服务接口,列表页面如下:
点击一条可以查看基本信息页面,显示服务接口信息,同样可以进行三种方式的调用,HTTP调用、CURL调用、JAVA调用:
下面主要对本次工作中的个人收获,能力提升进行总结,对于此次工作工程中的心得体会进行说明。
通过本次工作也学到了许多,对于API管理中的各个模块功能有了进一步了解,学习了管理控制台中对于接口参数的配置,服务安全报警的触发机制。对于API管理模块功能的梳理核心,目的是串联ESB各个模块的功能,验证多样应用场景,为后续项目中能够快速创建使用打下基础。
在学习和使用产品时需要多去研究其功能模块作用,分析其运行逻辑,这可以提升自己对于产品的理解能力,便于后续使用和开发工作,要从整体考虑其他相关功能是否好用,还要换位思考以客户的角度对产品性能、功能的、拓展等方面进行研究。
本次对于API管理模块功能的梳理工作学习到许多,应用管理模块中对于应用系统的管理,API服务模块中对于服务的三种创建方式导入、注册、配置,对其内部接口进行参数配置,了解三种调用方式,API安全模块中对于服务接口的安全报警配置,对于发送报警信息的相关处理等。
后续仍需要去加深对于API管理模块各个功能的理解,学习每个功能模块的运行逻辑,快速掌握产品的使用方法,也需要对于技术的发展方向,自身特点有清晰认知,不断提升自己的综合能力。