<center> </center>html
听说程序员最恨的两件事:一件是别人不写文档,另外一件是本身写文档。git
可见文档真的是程序员生活中相爱相杀的存在。一方面对于使用者来讲,一份全面、准确的文档简直就是旅行时的地图,烹饪时的菜谱,通关时的攻略。能够极大的提升对接的效率与尽量的减小踩坑的几率。然而,一份全面而又准确的文档谈何容易。程序员
以接口文档来讲,程序员不想写的缘由跟写单元测试同样,很大程序上在于它完彻底全是一个体力活,毫无创造性可言,枯燥而且乏味。更要紧的它不是一次性写完就能够了,还须要不停的维护,当你的业务变动进而致使代码变更,使得请求值、响应值、接口名称、字段注释、校验信息。。。。。均可能会修改。这个时候接口文档就要同步更新。不然它就会变的不许确了。若是常常对接接口的同窗可能深有体会,这不光出现于公司内部,对接外部接口,或提供外部接口不时有这样的问题。github
天下苦接口文档久矣!忽然有一天,一个头戴丝袜,气宇轩昂的大侠出现,改变了这个局面。他经过一套自创的注解,就能够自动生成一个在线的接口文档,并且随着代码的变动,它也会跟着变化。极大的减小了人们的工做量。为表达对于这位英雄的敬意,江湖人称--丝袜哥(Swagger音译)。spring
一个典型的生成后 swagger 的接口文档页面如上图所示。关于丝袜哥的传奇故事,咱们今天就说到这里。经过图片其实能够看出原生的界面、功能仍是比较有限的。首先没有一个登陆界面,基本上在使用时没几我的改 swagger 的默认地址。因此别人发现你的接口地址很容易访问到你的 swagger 页面,这就带来了安全风险。另外一点就是这个界面,怎么说呢,至少不是我喜欢的款。仍是一点就是直接对接起 Spring Boot 仍是有点麻烦的,各类 bean 要手动配置,一点也不 Spring Boot。安全
凡此种种,终于有一天。在 github 闲逛时,发现了一个不错的 swagger 的工具包,一用就爱不释手。项目地址下面就演示一下如何使用。spring-boot
<dependency> <groupid>com.battcn</groupid> <artifactid>swagger-spring-boot-starter</artifactid> <version>2.1.5-RELEASE</version> </dependency>
2.1.5-RELEASE
是当前的最新版,后续版本你们能够在项目地址上去看。工具
spring: swagger: enabled: true
配置结束了,若是你只想用最基本的 swagger 的功能的话。访问http://{host:port}/swagger-ui.html
后会有以下界面 该项目的 UI 是使用 Vue 重写的较原版不管是颜值仍是功能都有很大的提高。好比添加了搜索、接口统计等不少实用功能。若是咱们想开启登陆验证,防止接口文档被外部人员访问到,只要添加三条配置就能够了。单元测试
spring: swagger: enabled: true security: filter-plugin: true username: kiwi password: 123456
咱们再次访问接口页面,界面被拦截了,变成了以下登陆界面。 输入配置的帐号与密码,又见到了熟悉的接口页面了。学习
是否是感受很方便,很 easy。其实还有不少功能,由于篇幅有限,更重要是做者自己已经写了很好的使用文档,没有必要在本文再一一列举出来(好吧,实际上是我懒),你们能够到项目页面接着学习。另外在做者的页面能够看到他本人的博客地址,是一个宝藏博主哦!
关注公众号「KIWI的碎碎念」,分享的不只仅是技术