Swagger是一款非常流行的API文档生成工具,相信很多小伙伴都在用吧!如果用多了,可能会觉得界面丑,功能弱。今天给大家推荐一个工具Torna,它可以和Swagger搭配使用,搭建一个界面美观、API文档强大的网站。希望对您有所帮助!SpringBoot实战电商项目商城(50k+star)地址:https://github.com/macrozheng/mallTorna简介Torna是一个企业级的接口文档解决方案,可以配合Swagger使用。具有以下功能:文档管理:支持接口文档的增删改查,接口调试,字典管理,导入导出功能;权限管理:支持接口文档的权限管理,有访问者、开发者、管理员三种角色;双模式:独创的双模式,管理模式可以编辑文档内容,浏览模式纯粹是查看文档,界面没有其他元素的干扰。Torna项目架构Torna是一个前后端分离的项目。后端使用SpringBoot+MyBatis实现,前端使用Vue+ElementUI实现。技术栈很主流!它不仅可以搭建一个API文档网站,还是一个很好的学习项目。我们先来看看它的项目结构。首先,我们需要下载Torna的源代码。下载地址为:https://gitee.com/durcframewo...下载成功后将代码导入IDEA。项目结构如下;我们再看一下server模块的结构,一个很标准的SpringBoot项目;看一下前端模块的结构,很标准的Vue项目,值得学习!安装接下来我们运行Torna,体验一下它的功能。Windows和Linux有两种安装方法。Windows下面介绍下Torna在Windows下的安装方法。如果你想深入学习Torna,可以使用这个方法。后台操作先创建一个数据库torna,然后在项目中导入mysql.sql脚本。导入成功后表结构如下;修改项目配置文件server/boot/src/main/resources/application.properties,修改对应的数据库Connection配置;#服务器portserver.port=7700#MySQLhostmysql.host=localhost:3306#schemanamemysql.schema=torna#确保账户可以运行CREATE/ALTERsql.mysql.username=rootmysql.password=root然后运行项目启动在类TornaApplication的main方法中,控制台打印如下信息表示启动成功。运行前端进入前端项目目录front,运行npminstall命令安装依赖;此时如果无法安装node-sass,可以直接使用如下命令安装;npminode-sass--sass_binary_site=https://npm.taobao.org/mirrors/node-sass/依赖安装完成后,可以通过npmrundev命令启动项目。启动成功后访问地址:http://localhost:9530/通过体验账号密码admin@torna.cn:123456访问Torna服务,界面还是不错的!使用Docker在Linux下安装Torna非常简单。如果您只想将Torna作为API文档服务使用,可以使用此方法。首先,我们需要下载Torna的Docker镜像;dockerpulltanghc2020/torna:latest下载完成后,复制配置文件application.properties到/mydata/torna/config目录下,修改数据库配置;#服务器portserver.port=7700#MySQLhostmysql.host=192.168.3.101:3306#Schemanamemysql.schema=torna#确保账户可以运行CREATE/ALTERsql.mysql.username=rootmysql.password=root然后运行Torna服务通过以下命令;dockerrun-p7700:7700--nametorna\-v/mydata/torna/config:/torna/config\-dtanghc2020/torna:latest由于镜像中直接包含前后端工程,可以直接使用。访问地址:http://192.168.3.101:7700使用Torna支持从多种工具导入接口文档,包括Swagger、smart-doc、OpenAPI、Postman等,接下来就来体验一下它的功能吧!结合Swagger使用Torna可以大大增强Swagger的功能,而且界面也够漂亮,下面就来体验一下吧!在使用之前,我们需要在Torna中进行配置。首先我们配置一个开放用户,创建一个宏账户,记住AppKey和Secret;然后创建一个项目mall-tiny-trona;然后创建一个模块,打开OpenAPI选项卡获取请求路径和token;然后使用Swagger在项目中集成Torna插件,很简单,添加如下依赖即可;
