零、一张图读懂swagger
懂了,这玩意就是用swagger搞出来的!
就是一个后端开发自测的东西嘛!
一、概念
存在即合理,我们看一下swagger诞生的原因:在前后端分离的架构中,前端新增一个字段,后端就要跟着忙活好多工作,如果前端做了很多改动,然后前后端又沟通不及时,那就。。。任务延期呗。
除此之外,我们每隔一段时间都进行这样一个场景:前端人员和后端开发在一起热烈的讨论"哎,你这参数又变了啊","接口怎么又请求不通了啊","你再试试,我打个断点调试一下.."。可以看到在前后端沟通中出现了不少问题。
对于这样的问题,之前一直没有很好的解决方案,直到它的出现,没错...这就是我们今天要讨论的神器:swagger,一款致力于解决接口规范化、标准化、文档化的开源库,一款真正的开发神器。
PS:原来postman和杰夫平台、swagger是一样的。就是一个第三方测试工具,输入参数模拟前端http请求,返回response响应
- Swagger是一款RESTFUL接口的文档在线自动生成+功能测试功能软件。swagger可以和程序一起运行,在线测试后端API接口
- 号称世界上最流行的API框架
- 支持多种语言(java,php)
- 开源的
对于后端开发人员来说
- 自测的时候不用再手动拼接大量的参数,避免手写错误
- 对代码侵入性低,采用全注解的方式,开发简单
- 方法参数名修改、增加、减少参数都可以直接生效,不用手动维护
对于前端开发来说
- 后端只需要定义好接口,会自动生成文档,接口功能、参数一目了然
- 联调方便,如果出问题,直接测试接口,实时检查参数和返回值,就可以快速定位是前端还是后端的问题
对于测试
- 对于某些没有前端界面UI的功能,可以用它来测试接口
二、使用——springboot集成swagger
1、导入两个jar包
- springfox swagger2
- springfox swagger ui界面
2、空配置
先空配置,也就是用swagger的默认配置
访问:localhost:8080/swagger-ui.html(swagger测试API的地址,别管,规定就这样)是这样的:
3、配置swagger