介面文檔解決方案!企業級的介面文檔管理平臺!

来源:https://www.cnblogs.com/codechen8848/p/18365413
-Advertisement-
Play Games

Torna —— 一款介面文檔解決方案,目標是讓介面文檔管理變得更加方便、快捷。採用團隊協作的方式管理和維護介面文檔,將不同形式的文檔納入進來統一維護。 ...


大家好,我是 Java陳序員

在企業開發中,涉及到很多個項目,每個項目都有一套自己的介面文檔,維護起來不是很方便,需要一個統一的介面文檔管理平臺來進行管理。

今天,給大家介紹一個開源的企業級介面文檔管理平臺!

關註微信公眾號:【Java陳序員】,獲取開源項目分享、AI副業分享、超200本經典電腦電子書籍等。

項目介紹

Torna —— 一款介面文檔解決方案,目標是讓介面文檔管理變得更加方便、快捷。採用團隊協作的方式管理和維護介面文檔,將不同形式的文檔納入進來統一維護。

Torna 作為一款企業級介面文檔管理平臺,實現了統一管理項目介面文檔的功能,並且支持線上調試、游客預覽。

此外,可以使用 smart-doc 無侵入完成 Java 源代碼和註釋提取生成 API 文檔,然後自動將文檔推送到 Torna 介面文檔管理平臺,從而實現介面預覽、介面調試。

smart-doc 的介紹詳見:零侵入!試試這款Api介面文檔生成器!

如果一些舊項目使用 PostmanSwagger 或者 SpringDoc 來進行介面文檔管理,Torna 也提供了對應的插件來集成!

功能特色:

  • 文檔管理:支持介面文檔增刪改查、導入導出、OpenAPI接入、字典管理、介面調試
  • 許可權管理:以項目組的形式管理介面,各項目組之間介面互不影響,同時有訪客、開發者、管理員三種角色,每種角色有用不同許可權
  • 雙模式:提供【管理模式】、【瀏覽模式】雙模式,管理模式用來編輯文檔內容,瀏覽模式純粹查閱文檔,界面無其它元素干擾

界面預覽

登錄

空間列表

項目列表

應用管理

添加文檔

文檔預覽

介面調試

介面Mock

常量管理

版本管理

預覽模式

快速上手

前置準備

開發環境

  • Java8
  • MySQL5.6.5+
  • Maven3
  • Node.js12

拉取代碼

git clone https://gitee.com/durcframework/torna.git

目錄結構

front: 前端工程
plugin: 插件
script: 輔助腳本
sdk: OpenAPI對應的SDK
server: 服務端工程
mysql.sql:資料庫腳本

後端服務

1、將整個項目以 Maven 項目的形式導入到 IDEA 中

2、執行腳本 mysql.sql 初始化數據

3、修改配置文件 server/boot/src/main/resources/application.properties 中的資料庫配置信息

4、運行主啟動類 server/boot/src/main/java/cn/torna/TornaApplication.jav 啟動項目

前端服務

1、進入前端項目

cd front

2、安裝依賴

npm isntall

3、啟動項目

npm run dev

4、瀏覽器訪問:

http://localhost:9530/#/

預設用戶名密碼:admin/123456

部署 Torna 可以使用源碼打包的方式進行部署,也可以使用項目提供的腳本進行部署,或者是使用 Docker 的方式進行部署,具體的部署方式可以參考官方文檔。

使用 smart-doc 推送文檔

使用 smart-doc 可以無侵入完成提取註釋生成 API 文檔,並自動將文檔推送到 Torna 平臺。

smart-doc 插件是依賴於介面的源代碼進行分析和生成文檔,因此需按照 JavaDoc 的標準編寫註釋。

1、在 Torna 平臺先創建一個項目,在 OpenAPI 中獲取請求路徑和 token

2、在項目中引入 smart-doc 插件

<plugins>
    <!-- smart-doc插件 -->
    <plugin>
        <groupId>com.ly.smart-doc</groupId>
        <artifactId>smart-doc-maven-plugin</artifactId>
        <version>3.0.2</version>
        <configuration>
            <!--指定生成文檔的使用的配置文件-->
            <configFile>${basedir}/src/main/resources/smart-doc.json</configFile>
            <!--指定項目名稱-->
            <projectName>收銀台後臺服務</projectName>
        </configuration>
        <executions>
            <execution>
                <phase>package</phase>
            </execution>
        </executions>
    </plugin>
</plugins>

3、在項目的 resources 目錄下添加一個 smart-doc.json 文件

{
  "outPath": "target/doc",
  "projectName": "收銀台後臺服務",
  "packageFilters": "com.codechen.pay.controller.*",
  "openUrl": "http://localhost:9530/api",
  "appToken": "27ffa73c8794454abc58f481ada23766",
  "debugEnvName":"本地環境",
  "debugEnvUrl":"http://127.0.0.1:8080",
  "tornaDebug": true,
  "replace": true
}

openUrlappToken 在應用的 OpenAPI 中獲取。

4、運行插件,將文檔推送到 Torna 平臺

或者在項目根目錄輸入 Maven 命令:mvn -Dfile.encoding=UTF-8 smart-doc:torna-rest -pl :shop-web -am

除了使用 smart-doc 插件推送文檔外,項目還提供了 Swagger 文檔、SpringDoc 文檔推送的插件,相應的集成可參考項目文檔。

Torna 可以說是一個功能十分強大的介面管理平臺,完美適用於企業級開發。如果需要搭建一個企業級的介面管理平臺,可以考慮使用 Torna.

項目地址:https://gitee.com/durcframework/torna
線上文檔:https://torna.cn/

最後

推薦的開源項目已經收錄到 GitHub 項目,歡迎 Star

https://github.com/chenyl8848/great-open-source-project

或者訪問網站,進行線上瀏覽:

https://chencoding.top:8090/#/

大家的點贊、收藏和評論都是對作者的支持,如文章對你有幫助還請點贊轉發支持下,謝謝!


您的分享是我們最大的動力!

-Advertisement-
Play Games
更多相關文章
  • 在PHP 7.4中安裝xdebug,出現"configure: error: rtnetlink.h is required, please make sure it is available by installing the correct package"的問題。 在使用sudo yum in ...
  • 寫在前面 今天繼續講JavaIO流的知識! Java 文件與流操作 File 類 File 類用於表示文件和文件夾的抽象。 構造方法 public File(String pathname): 使用路徑名創建 File 對象。 public File(String parent, String ch ...
  • 類中使用shared_ptr()的問題 當我們先定義一個指針,然後再用這個指針構造兩個智能指針 int main() { int* pt = new int(); std::shared_ptr<int> p1(pt); std::shared_ptr<int> p2(pt); std::cout ...
  • 先序: 學習編程語言要先學個輪廓,剛開始只用學核心的部分,一些細節、不常用的內容先放著,現用現查即可;把常用的東西弄熟練了在慢慢補充。 1、 安裝 Python 解釋器 為什麼需要安裝 Python Python 語言本身是由解釋器執行的,因此你需要在你的電腦上安裝 Python 解釋器。這個解釋 ...
  • 先序: 學習編程語言要先學個輪廓,剛開始只用學核心的部分,一些細節、不常用的內容先放著,現用現查即可;把常用的東西弄熟練了在慢慢補充。 1. Java 概述 Java 是一種面向對象的編程語言,由 Sun Microsystems(現在的 Oracle)在 1995 年推出。Java 程式可以在任何 ...
  • 正文 今天還是把周末的所有事情一起寫。每到周末都沒什麼寫日記的動力。 周五下午出去吃飯,吃一半,斯視頻突然打過來。我當時有點懵,不知道他要乾什麼,但還是接了。第一個畫面就是他擺弄自行車。他跟我說,自行車踏板和鏈條有問題,踩下去的時候轉一半就動不了了。 經過我們二人一通瞎猜,發現是後面的鏈條掉了,但是 ...
  • 1. Rust 簡介 Rust 的歷史 起源:Rust 語言最初由 Mozilla 研究員 Graydon Hoare 於 2006 年開始設計,並於 2009 年首次公開。 開發:Rust 是 Mozilla 實驗室的一個項目,目的是創建一種能夠保證記憶體安全同時又不犧牲性能的系統編程語言。 發佈: ...
  • 1. make 和 Makefile 1.1. 什麼是make? 1.2. 什麼是Makefile? 1.3. make 與 Makefile的關係 2. Makefile的語法 2.1. 基本語法 2.2. 變數 2.3. 偽目標 2.4. 模式規則 2.5. 自動變數 2.6. 條件判斷 3. ...
一周排行
    -Advertisement-
    Play Games
  • 示例項目結構 在 Visual Studio 中創建一個 WinForms 應用程式後,項目結構如下所示: MyWinFormsApp/ │ ├───Properties/ │ └───Settings.settings │ ├───bin/ │ ├───Debug/ │ └───Release/ ...
  • [STAThread] 特性用於需要與 COM 組件交互的應用程式,尤其是依賴單線程模型(如 Windows Forms 應用程式)的組件。在 STA 模式下,線程擁有自己的消息迴圈,這對於處理用戶界面和某些 COM 組件是必要的。 [STAThread] static void Main(stri ...
  • 在WinForm中使用全局異常捕獲處理 在WinForm應用程式中,全局異常捕獲是確保程式穩定性的關鍵。通過在Program類的Main方法中設置全局異常處理,可以有效地捕獲並處理未預見的異常,從而避免程式崩潰。 註冊全局異常事件 [STAThread] static void Main() { / ...
  • 前言 給大家推薦一款開源的 Winform 控制項庫,可以幫助我們開發更加美觀、漂亮的 WinForm 界面。 項目介紹 SunnyUI.NET 是一個基於 .NET Framework 4.0+、.NET 6、.NET 7 和 .NET 8 的 WinForm 開源控制項庫,同時也提供了工具類庫、擴展 ...
  • 說明 該文章是屬於OverallAuth2.0系列文章,每周更新一篇該系列文章(從0到1完成系統開發)。 該系統文章,我會儘量說的非常詳細,做到不管新手、老手都能看懂。 說明:OverallAuth2.0 是一個簡單、易懂、功能強大的許可權+可視化流程管理系統。 有興趣的朋友,請關註我吧(*^▽^*) ...
  • 一、下載安裝 1.下載git 必須先下載並安裝git,再TortoiseGit下載安裝 git安裝參考教程:https://blog.csdn.net/mukes/article/details/115693833 2.TortoiseGit下載與安裝 TortoiseGit,Git客戶端,32/6 ...
  • 前言 在項目開發過程中,理解數據結構和演算法如同掌握蓋房子的秘訣。演算法不僅能幫助我們編寫高效、優質的代碼,還能解決項目中遇到的各種難題。 給大家推薦一個支持C#的開源免費、新手友好的數據結構與演算法入門教程:Hello演算法。 項目介紹 《Hello Algo》是一本開源免費、新手友好的數據結構與演算法入門 ...
  • 1.生成單個Proto.bat內容 @rem Copyright 2016, Google Inc. @rem All rights reserved. @rem @rem Redistribution and use in source and binary forms, with or with ...
  • 一:背景 1. 講故事 前段時間有位朋友找到我,說他的窗體程式在客戶這邊出現了卡死,讓我幫忙看下怎麼回事?dump也生成了,既然有dump了那就上 windbg 分析吧。 二:WinDbg 分析 1. 為什麼會卡死 窗體程式的卡死,入口門檻很低,後續往下分析就不一定了,不管怎麼說先用 !clrsta ...
  • 前言 人工智慧時代,人臉識別技術已成為安全驗證、身份識別和用戶交互的關鍵工具。 給大家推薦一款.NET 開源提供了強大的人臉識別 API,工具不僅易於集成,還具備高效處理能力。 本文將介紹一款如何利用這些API,為我們的項目添加智能識別的亮點。 項目介紹 GitHub 上擁有 1.2k 星標的 C# ...