Swagger-UI 基于REST的API测试/文档类插件
现在多数的项目开发中,网站和移动端都需要进行数据交互和对接,这少不 了使用REST编写API接口这种场景。例如我目前的工作,移动端交由了另一团队开发,不同开发小组之间就需要以规范和文档作为标准和协作基础。良好的文 档可以让开发事半功倍,而作为又懒又要效率又能交代的码农,当然最希望一切自动化,或用小聪明来找到最适合的工具。
Swagger-UI简单而一目了然。它能够纯碎的基于html+javascript实现,只要稍微整合一下便能成为方便的API在线测试工具。项目的设计架构中一直提倡使用TDD(测试驱动)原则来开发,swagger-ui在这方面更是能提供很大帮助。
Swagger-UI更倾向于在线测试接口和数据,但其核心是一个javascript插件,只要稍作修改,便能按需求定制出不同格式的说明文档,在github上更是基于它集成到各种语言环境,分支众多。
其官方提供了一个脱机版本,其使用方法十分简单:直接在js格式的资源文件中录入REST API的json信息,便能容易地生成不同模块下的API列表,每个API接口描述和参数、请求方法都能在每个json数组中定制。下面是目前项目中使用到的部分预览图:
此外,Swagger-UI 中可以编写默认范例架构给用户参考(如上图红框处),但此处输入内容的body,需要使用者自行定义对应格式的类别,与我们一般API输入大多为字符串类别不同,故如果需要如图的范例架构去做呈现,一开始设计API时就须考虑。不久的将来,WISE-PaaS/RMM 也会导入 Swagger 或者其他动态产生的 API Document。