还在使用Swagger吗,快来试试这款强大的在线API工具

Posted 微笑很纯洁

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了还在使用Swagger吗,快来试试这款强大的在线API工具相关的知识,希望对你有一定的参考价值。

将开源小分队设为星标 精品文章第一时间读

大家好,我是可爱又机灵的开源小妹。

今天给大家分享一个非常好用的在线文档工具:Knife4j

背景

现在分工越来越明确,做项目也都是前后端分离,这样就和前端沟通越来越多,包括现在微服务架构也越来越流行,服务就会进行拆分,各个服务之间有不同的团队开发,这个时候一份简洁完善的在线API接口就很有必要了,可以提提高大家的工作效率,减少一些不必要的沟通。Knife4j就是在线API文档的佼佼者,不仅提供了美观的在线API文档,还有其他的一些特性例如:全局参数、个性化设置、资源安全等,大家跟着小妹一块来看看吧。

快速入门

加入依赖

<dependency>
  <groupId>com.github.xiaoymin</groupId>
  <artifactId>knife4j-spring-boot-starter</artifactId>
  <version>2.0.9</version>
</dependency>

简单配置

@Configuration
@EnableSwagger2WebMvc
public class KnifeConfiguration 
    @Bean
    public Docket createRestApi() 
        return new Docket(DocumentationType.SWAGGER_2)
                .apiInfo(apiInfo())
             .groupName("V1版本")
                .select()
                .apis(RequestHandlerSelectors.withClassAnnotation(Api.class))
                .paths(PathSelectors.any())
                .build();
    
    private ApiInfo apiInfo() 
        return new ApiInfoBuilder()
                .title("Knife Simple Demo APIs")
                .description("Knife Simple Demo")
                .version("1.0")
                .build();
    

访问地址:http://localhost:8080/doc.html,其中端口是自己服务的端口信息,小妹这边配置的是8080端口


image-20211114190908046

选择调试,进行访问

image-20211114191030633

看起来是不是很简洁,很清楚呢,和前端小伙伴对接的效率都提高了不少。

对比

在使用Knife4j之前,小妹一直使用的是swagger,那为什么要从swagger出来入坑到Knife4j呢?

两个在简单时候用上配置&依赖都差不多,Knife4j是在swagger的ui基础上做了增强。在后端使用上基本是一样的,主要体现在前端效果上

swagger页面效果如下:

image-20211114195113293

image-20211114195138295

swagger展示api的方式是一条一条的,不像Knife4j那样是以左侧菜单的方式进行展示的,Knife4j更符合操作习惯 并且功能更丰富。

Knife4j实际上是基于swagger开发的一个增加的UI包,所以不是说swagger不够好,而是说Knife4j的页面展示或者操作更加方便。

如果正在使用swagger想转到Knife4j的话只需要稍微改动一下依赖 基本就可以转入看到Knife4j样式的在线api了。

高级使用

上面小妹介绍了Knife4j的简单使用,Knife4j还有一些其他强大的配置,更丰富的功能,跟着小妹一块去看看吧。

  • 可以导出4种离线文档

markdown格式

html格式

word格式

OpenApi格式

全局参数设置

在进行接口调试的时候,有时需要带上头信息,如果一个一个接口写比较麻烦,Knife4j提供了全局参数设置,只需设置一遍,后续Debug调试页则会带上添加的参数。


分组搜索

//设置分组
.groupName("V1版本")
可以选择对应的组查看对应的api,当api多的的时候 可以输入关键字进行搜索。

小妹总结

Knife4j不止上面介绍的那几种特性设置,还有其他的例如授权、功能增强、个性化设置、国际化等等,小妹就不在这里一一介绍了。

听到开源小妹的安利,你是不是也有点心动了,赶紧去公众号后台回复「在线API」,获取开源项目的地址吧~~~

问君能有几多愁,开源项目解千愁,我们下期再见!

大家的点赞、收藏和评论对小妹非常重要,如文章对你有帮助还请转发支持下,谢谢!

以上是关于还在使用Swagger吗,快来试试这款强大的在线API工具的主要内容,如果未能解决你的问题,请参考以下文章

还在用 Swagger?试试这款神器,功能真心强大!

扔掉Swagger,试试这款功能强大,零注解侵入的API接口文档生成工具!

扔掉Swagger,试试这款功能强大,零注解侵入的API接口文档生成工具!

还在为Android表情开发烦恼吗,快来试试Android Emoji吧

还在为Android表情开发烦恼吗,快来试试Android Emoji吧

还在为Android表情开发烦恼吗,快来试试Android Emoji吧