网址:
API Documentation & Design Tools for Teams | Swagger
一、Swagger是什么?
Swagger 是最流行的 API 开发工具,它遵循 OpenAPI Specification(OpenAPI 规范,也简称 OAS)。 Swagger 可以贯穿于整个 API 生态,如 API 的设计、编写 API 文档、测试和部署。 Swagger 是一种通用的,和编程语言无关的 API 描述规范。
二、Swagger可以做什么?
使用 Swagger 开源和专业工具集简化用户、团队和企业的 API 开发。了解 Swagger 如何帮助您大规模设计和记录 API。
接口设计:设计是 API 开发的基础。Swagger 为开发人员、架构师和产品所有者提供了易于使用的工具,使 API 设计变得轻而易举。
接口开发:协议、错误处理和代码模块化只是您的团队在构建出色的 API 之前需要解决的一些问题。Swagger 提供了用于快速原型设计和构建 API 功能的工具。
接口文档:Swagger 通过一系列用于生成、可视化和维护 API 文档的解决方案,将手动工作从 API 文档中解放出来。
接口测试:Swagger工具和ReadyAPI平台使您可以轻松地在管道中快速创建,管理和执行API测试。
API 模拟和虚拟化:减少开发和测试周期中的依赖性,并通过 Swagger 和 ReadyAPI 虚拟化在几秒钟内完成逼真的动态模拟。
治理和标准化:人员和流程构成了一个成功的 API 计划。有效管理这些努力有助于实现善政。无论您拥有五百人还是五百人的团队,Swagger 都可以提供帮助。
接口监控:使用 AlertSite for OAS 监控 API 可用性、速度和功能,从您的 OpenAPI 规范 (OAS) 开始。自动创建监视器并即时跟踪 API 行为,以确保生产中一切顺利进行。
三、为什么要使用Swagger?
对于后端开发
- 不用再手写WiKi接口拼大量的参数,避免手写错误
- 对代码侵入性低,采用全注解的方式,开发简单
- 方法参数名修改、增加、减少参数都可以直接生效,不用手动维护
- 缺点:增加了开发成本,写接口还得再写一套参数配置
对于前端开发
- 后端只需要定义好接口,会自动生成文档,接口功能、参数一目了然
- 联调方便,如果出问题,直接测试接口,实时检查参数和返回值,就可以快速定位是前端还是后端的问题
对于测试人员
- 对于某些没有前端界面UI的功能,可以用它来测试接口
- 操作简单,不用了解具体代码就可以操作
- 操作简单,不用了解具体代码就可以操作
四、如何使用Swagger?
Spirng Boot 集成 Swagger
1、新建springboot项目
Spring Boot 安装 (IntelliJ IDEA Community Edition)_AnyaPapa的博客-优快云博客
2、导入相关依赖
<!-- https://mvnrepository.com/artifact/io.springfox/springfox-swagger2 -->
<dependency>
<groupId>io.springfox</groupId>
<artifactId>springfox-swagger2</artifactId>
<version>2.9.2</version>
</dependency>
<!-- https://mvnrepository.com/artifact/io.springfox/springfox-swagger-ui -->
<dependency>
<groupId>io.springfox</groupId>
<artifactId>springfox-swagger-ui</artifactId>
<version>2.9.2</version>
</dependency>
3、创建Swagger2配置类
在Application.java同级创建Swagger2的配置类Swagger2。
@Configuration
@EnableSwagger2
public class Swagger2 {
@Bean
public Docket createRestApi() {
return new Docket(DocumentationType.SWAGGER_2)
.apiInfo(apiInfo())
.select()
.apis(RequestHandlerSelectors.basePackage("com.didispace.web"))
.paths(PathSelectors.any())
.build();
}
private ApiInfo apiInfo() {
return new ApiInfoBuilder()
.title("Spring Boot中使用Swagger2构建RESTful APIs")
.description("更多Spring Boot相关文章请关注:http://blog.didispace.com/")
.termsOfServiceUrl("http://blog.didispace.com/")
.contact("程序猿DD")
.version("1.0")
.build();
}
}
如上代码所示,通过@Configuration注解,让Spring来加载该类配置。再通过@EnableSwagger2注解来启用Swagger2。再通过createRestApi函数创建Docket的Bean之后,apiInfo()用来创建该Api的基本信息(这些基本信息会展现在文档页面中)。select()函数返回一个ApiSelectorBuilder实例用来控制哪些接口暴露给Swagger来展现,本例采用指定扫描的包路径来定义,Swagger会扫描该包下所有Co

最低0.47元/天 解锁文章

被折叠的 条评论
为什么被折叠?



