5个方法教你如何解决API接口管理难题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
5个方法教你如何解决API接口管理难题
互联网应用的普及率正在逐年上升,目前的发展趋势就是“开放”,越来越多的产品走向开放,越来越多的站点把自身的资源开放给开发者来调用。目前的网站不能靠限制用户离开来留住用户,开放的架构反而更增加了用户的粘性,API调用使得站点之间的内容关联性更强,同时也为用户、开发者和中小网站带来了更大的价值。
Web站点在为使用者带来价值的同时,更希望通过开放的API来让站点提供的服务拥有更大的用户群和服务访问数量。站点在推出基于开放API标准的产品和服务后,无需花费力气做大量的市场推广,只要提供的服务或应用出色易用,其他站点就会主动将开放API提供的服务整合到自己的应用之中。同时,这种整合API带来的服务应用往往具有意想不到的效果。比方说某区域站点接入“赛合一数据”提供的话费充值API接口,全国三大运营商的话费都可充值,覆盖范围一下子从区域变到全国,这就解决了各省运营商需独立对接的尴尬局面。
当然,以上是API接口最终产生的效果,而作为让API实现这些功能的程序员,其实需要面
对的难题很多。一般遇到的难题可以归结为以下几点:
首先,API接口在设计时往往需要编写大量的文档,而且编写完成之后还会经常改动,文档编写维护工作量大。接口文档编写好后,实际的代码可能会与文档有出入,这个时候文档是不准确的,文档与代码保持修改同步也是一个很大的工作量。
其次,随着接口版本的迭代,接口文档需要同步更新。有些时候接口会成为对接双方的开发进度瓶颈,因为接口调用会有依赖,类似app的项目,前端会需要调用后端接口,接口功能不实现会影响前端开发进度。
最后,接口开发完以后,做接口测试不方便,特别是接口数量多,参数复杂的情况,测试工作量大。接口在版本迭代后,旧的接口常常需要做回归测试,这个工作量也是非常大的。
基于以上的痛点,通常我们会采用以下的解决思路
●API接口管理系统化或平台化,可以直接在可视化API管理界面上方便的维护接口。而
且最好有版本管理和权限管理。
●可视化维护好的接口可以直接生成对应语言的代码,节省代码开发量。代码有变更时,
最好还可以与界面上的接口进行同步。
●API界面能够提供模拟接口实现方的调用功能,这样就能解耦接口调用方与服务方的强
进度依赖,可以先按API接口的消费方基于接口管理系统或平台模拟调用,待服务方准备好后再真实调用。而且这里的模拟最好能做到自定义规则的模拟返回。
●接口实际开发完成后,可以根据接口管理系统或平台的可视化测试界面,直接进行接口
的实际调用测试。
●接口平台能够支持自动化测试,可以自定义测试案例,然后自动化测试并生成可视化报
告。这个功能在旧版本接口复测时非常有用。
当然实际落到系统的话,除了上述的核心功能,还有些关联功能,这里就先不细说了。总之,API接口管理应该是大部分公司都会面临的一个管理问题,因此如果发现有现成的轮子适合自己也是可以直接拿来用的。国外和国内的一般都有所差别,但根据经验综合比较下来,“赛合一数据”觉得国外的Swagger是在API管理这方面做得比较好的,当然实际需求不同公司是千差万别的,最适合的才是最好的,至于哪个更适合就需要自己根据实际情况去比较了。