文档章节

API管理-舍弃springfox-swagger-ui,采用功能更加丰富的swagger-bootstrap-ui

秋日芒草
 秋日芒草
发布于 06/23 16:52
字数 767
阅读 109
收藏 0

1. 为什么要使用swagger-bootstrap-ui?

上一篇博客(API管理-基于SpringBoot项目集成swagger实现接口文档自动生成)中我已经提到过使用springfox-swagger-ui的部分问题,上下结构的接口层次不利于接口的查看、无法支持离线下载成pdf或word或html等,而swagger-bootstrap-ui的出现把这些问题都解决了并且还扩展了部分实用新功能,比如:新增接口页面权限功能..

swagger-bootstrap-ui 对比springfox-swagger-ui原生ui有哪些优点:
1. 支持接口pdf和word和markdwon方式对接口文档进行导出,wagger-bootstrap-ui 提供markdwon格式类型的离线文档,开发者可拷贝该内容通过其他markdown转换工具进行转换为html或pdf.
2. 一个项目同时支持swagger-bootstrap-ui、springfox-swagger-ui二种方式同时使用
3. 界面相比springfox-swagger-ui更友好、左右排版结构更加清晰
4. 支持search相关接口内容
5. 可进行接口版本的管理
6. 国际化
7. 支持自定义文档
8. 支持开启生产环境,屏蔽Swagger所有资源接口
9. 可设置在线接口文档权限控制
......

2. 使用方式

基于上一篇博客的基础上新增如下配置:

  • 新增swagger-bootstrap-ui 增强ui pom依赖
<!-- swagger-bootstrap-ui增强ui  -->
<dependency>
  <groupId>com.github.xiaoymin</groupId>
  <artifactId>swagger-bootstrap-ui</artifactId>
  <version>1.9.4</version>
</dependency>
  • 在MvcConfig类中新增 registry.addResourceHandler("doc.html").addResourceLocations("classpath:/META-INF/resources/");
public void addResourceHandlers(ResourceHandlerRegistry registry) {
   //如果静态文件放到了classpath 下,就如下配置。
   registry.addResourceHandler("/static/**").addResourceLocations("classpath:/static/");

   /*放行swagger*/
   registry.addResourceHandler("swagger-ui.html")
		   .addResourceLocations("classpath:/META-INF/resources/");
   registry.addResourceHandler("doc.html").addResourceLocations("classpath:/META-INF/resources/");
   registry.addResourceHandler("/webjars/**")
		   .addResourceLocations("classpath:/META-INF/resources/webjars/");
   super.addResourceHandlers(registry);
}

3. 如果将markdown(.md)文件快速导出成html或word文件

swagger-bootstrap-ui 提供markdwon格式类型的离线文档,开发者可拷贝该内容通过其他markdown转换工具进行转换为html或pdf.
pandoc安装参考博客:https://blog.csdn.net/xc_zhou/article/details/81009893 , https://www.jianshu.com/p/52cbee87a45a
pandoc下载地址:https://github.com/jgm/pandoc/releases/tag/2.2

1》按照md->HTML->PDF的路径转。于是先把md转为HTML,HTML的样式倒是挺美观,然后在浏览器中使用浏览器的打印功能把HTML转为PDF。
2》md->docx->PDF(推荐)

pandoc -s test.md -o test.docx
pandoc -f markdown -t html -o test.html readme.md

html生成后可以自定样式文件,使文档更好看

4. 总结

swagger-bootstrap-ui 对比springfox-swagger-ui原生ui,比原生ui强大很多,配置使用方式二者一致,swagger扫描到的数据信息是不变的,相当于换了一个管理端页面,呈现出不一样的管理方式,更加友好,推荐使用swagger-bootstrap-ui,详细的功能请参考码云开源项目:swagger-bootstrap-ui

© 著作权归作者所有

秋日芒草
粉丝 33
博文 105
码字总数 65405
作品 0
遵义
程序员
私信 提问
暮光:城中城/zyplayer-doc

zyplayer-doc 项目介绍 定位为所有文档的管理项目,swagger文档、数据库文档、、、、等,提供一整套的解决方案,欢迎有想法的一起来写 软件架构 zyplayer-doc-core 一些核心、公用的类 zypl...

暮光:城中城
01/07
0
0
通用文档管理项目 - zyplayer-doc

zyplayer-doc 项目介绍 定位为所有文档的管理项目,swagger文档、数据库文档、、、、等,提供一整套的解决方案,基本功能已很完善,欢迎有想法的一起来写 软件架构 zyplayer-doc-core 一些核...

暮光城中城
01/07
10.6K
4
SwaggerBootstrapUi 1.9.0 发布,提供Swagger资源保护

SwaggerBootstrapUi 1.9.0 发布,提供Swagger资源保护 SwaggerBootstrapUi 1.9.0 发布了。SwaggerBootstrapUi是 Swagger 的增强UI 实现,使文档更友好一点儿 GitHub Gitee 文档 示例代码 在线...

八一菜刀
02/25
1K
8
Swagger2与Spring REST Docs

编者注 之前让其他写服务端的小伙伴支持swagger,然后最近一直在写Unity,没有把之前的项目和Swagger进行集成 Swagger Core Swagger Core Git Swagger 2.X 快速开始 注意:Swagger 2.x 遵循O...

抢小孩糖吃
02/21
116
0
Swagger使用指南

1:认识Swagger Swagger 是一个规范和完整的框架,用于生成、描述、调用和可视化 RESTful 风格的 Web 服务。总体目标是使客户端和文件系统作为服务器以同样的速度来更新。文件的方法,参数和...

玄影镜心
2016/12/19
34.5K
4

没有更多内容

加载失败,请刷新页面

加载更多

Rabbit MQ 延迟消息发送

为什么使用延迟消息? 不同于同步消息,有些业务场景下希望可以实现延迟一定时间再消费消息。 典型的场景有微信、支付宝等第三方支付回调接口,会在用户支付后3秒、5秒、30秒等等时间后向应用...

兜兜毛毛
8分钟前
2
0
【0918】正则介绍_grep

【0918】正则介绍_grep 9.1 正则介绍_grep上 9.2 grep中 9.3 grep下 一、正则介绍 正则是一串有规律的字符串,它使用单个字符串来描述或匹配一系列符合某个语法规则的字符串。 二、grep工具 ...

飞翔的竹蜻蜓
38分钟前
4
0
为什么要在网站中应用CDN加速?

1. 网页加载速度更快 在网站中使用CDN技术最直接的一个好处就是它可以加快网页的加载速度。首先,CDN加速的内容分发是基于服务器缓存的,由于CDN中缓存了不少数据,它能够给用户提供更快的页...

云漫网络Ruan
今天
8
0
亚玛芬体育(Amer Sports)和信必优正式启动合作开发Movesense创新

亚玛芬体育和信必优正式启动合作开发Movesense创新,作为亚玛芬体育的完美技术搭档,信必优利用Movesense传感器技术为第三方开发移动应用和服务。 Movesense基于传感器技术和开放的API,测量...

symbiochina88
今天
4
0
创龙TI AM437x ARM Cortex-A9 + Xilinx Spartan-6 FPGA核心板规格书

SOM-TL437xF是一款广州创龙基于TI AM437x ARM Cortex-A9 + Xilinx Spartan-6 FPGA芯片设计的核心板,采用沉金无铅工艺的10层板设计,适用于高速数据采集和处理系统、汽车导航、工业自动化等领...

Tronlong创龙
今天
5
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部