Swagger框架从宏观上来看

时间:2022-01-08 06:08:35

  首次接触Swagger是在2017年5月,其时公司正好要对整套系统架构进行从头设计,有同事保举用这个技术框架来规范后台接口的API文档。其时因为架构重构,涉及改革的技术点太多,一时也就没太多精力,把Swagger暂时放下了。对付API文档我们就本身界说了一个模板,统一要求开发人员把文档写在tower上了。

此刻回头来看,存在这么几个问题:

1. 文档编写及改削的及时性不够,由于API在开发及测试过程中经常会有调解,相应的文档不能及时得到改削。

2. 文档的规范性需要酬报的查抄来约束,增大了项目打点的事情量

3. 前端和测试人员对文档的理解有一个过程,有时需要频繁和后台开发人员进行交流,孕育产生了必然的交流本钱。

由于此刻的互联网项目都是前后端合作的形式,前端和后真个独一联系,酿成了API接口;API文档酿成了前后端开发人员联系的纽带,变得越来越重要,在这样的情况下,我又把注意力再次投向了Swagger。颠末几天研究,大抵有了对照清晰的认识,筹备写几篇博客对这个技术进行一下说明。

Swagger这个单词做形容词是 “炫耀的;时髦的”  这样一个意思。官网地点:  https://swagger.io   ,官网对其项目的界说是:

Swagger is the world’s largest framework of API developer tools for the OpenAPI Specification(OAS), enabling development across the entire API lifecycle, from design and documentation, to test and deployment.                

中辞意思是:Swagger是一个大型的API开发者的工具框架,该框架提出了一个编写OpenAPI的规范(定名为OAS),并且Swagger可以跨整个API生命周期进行开发,从设计和文档到测试和部署。

Swagger这个框架的道理:框架提出了一个文档规范OAS,且供给了相应的可视化编纂器可以编纂这个文档以及对文档格局进行校验,文档的存储格局可是XML或者JSON形式的文件(后面简称API元文件),围绕着API元文件框架供给了对API元文件进行可视化展示的工具,展示的时候可以自界说模板,展示的方法是浏览器的网页形式(也就是一个 可交互的web系统),并且撑持对AIP接口的在线的交互测试。同时社区还开发了一些集成框架,以便让Swagger能和例如SpringMVC这样的框架很好的整合,,通过在Controller上写注解就可以自动生成相应的API文档。更有意思的是Swagger还供给了按照API元文件生成客户端挪用代码和处事端Stub代码的成果。

Swagger框架从宏不雅观上来看,我小我私家感受可以分为三部分: