Swagger 是什么?
Swagger 是什么?维基百科上是这样介绍的:
Swagger是一种接口描述语言,用于描述使用JSON表示的RESTful API 。
这里提到了JSON和RESTful 两大名词,JSON的全称为(JavaScript Object Notation) JavaScript对象表示法,它是一种轻量级的数据交换格式,采用完全独立于编程语言的文本格式来存储和表示数据。而RESTful 则表示一种规范,它的全称是(**Representational State Transfer)**表述性状态转换,可以通俗的理解为:一组具有约束条件和原则的规范。
- RESTFUL API 就是经过一组确定好的具有约束行为和统一原则的规范来规定 API的书写规则、命名规则、请求规则、响应规则的一种表述性方式。通过这个方式可以理解 API 所代表的的业务场景和返回字段的含义。
回到Swagger当中,它其实就是一款可以简化 API开发的工具,并且根据UI界面生成一个自动化的接口文档地址,便于项目的测试与接口的管理。
为什么使用 Swagger?
1. 配置简单、快速上手
例如想要在SpringBoot工程中使用Swagger,不用编写任何繁琐的xml配置,只需要将指定好的依赖导入pom.xml中即可,并且再根据一个简单的Swagger配置类即可使用。
2. 界面友好、通俗易懂
Swagger 通过内置 html 解析器的方式来实现将 RESTFUL API数据显示在界面上供开发者查看,界面样式既简洁又美观,开发者可以很直观地看到自己所编写的 RESTFUL API 的请求方式、请求参数、返回格式以及所属业务组,如下图所示。
3. 快速测试、便于交互
例如在开发SpringBoot项目的时候,在测试接口时需要用到浏览器(默认只支持GET请求)或者postman,前者测试能力有限,后者又太繁琐,每次都需要切换不同的请求和URL地址,使得开发效率的降低,而使用了Swagger之后,只需要在响应的类和方法上使用注解进行说明,Swagger就会生成一份完整的接口文档和注释说明。
Swagger 的优点
- 格式导出灵活 : 支持 Json 和 yml 来编写 API 文档,并且支持导出为 json、yml、markdown 等格式。
- 跨语言支持性 : 只针对 API,而不针对特定语言的 API&