swagger UI本地搭建與使用

"Swagger is the world’s largest framework of API developer tools for the OpenAPI Specification(OAS), enabling development across the entire API lifecycle, from design and documentation, to test and deployment."

Swagger是一款基于OpenAPI規(guī)范的API開發(fā)工具框架,從設計、文檔、測試和部署支持整個API開發(fā)的生命周期。

其中Swagger Ui 能夠動態(tài)的生成漂亮的API文檔。

這里來講一下Swagger Ui的搭建與基本使用方法。

本地搭建

準備:

  • Node 6.x
  • NPM 3.x

以上。這是官網提供的參數,我本地使用的node是7.10.0。

下載:

  • 訪問github下載整個包。
  • 或使用git工具下載 git clone https://github.com/swagger-api/swagger-ui.git

dev環(huán)境

npm run dev

打開http://localhost:3200就可以看到頁面了。

image.png

生產環(huán)境

下載的包中的dist文件夾為swagger預生成的包,可以直接使用。

若是需要自定義開發(fā),可以修改后使用npm run build進行再次編譯。

使用

如果只是上面的搭建的話,通常情況下不能完全滿足需求。比如:

  1. 雖然Swagger提供了配套的Editor編輯工具,我們仍然需要做點工作將兩者結合起來。
  2. 雖然Swagger Editor的語法簡單,但是對于初上手的開發(fā)者而言仍然有一定的上手成本,在團隊中推廣存在一定困難。

為此,我們需要做點別的工作。

搭建配套設施

(1)新建項目

新建一個express項目,接入Swagger UI.

yarn add express --dev

把上面的dist文件復制到項目文件下。
<pre>
-express
-index.js
-package.json
-src
-index.html
-swagger-ui.js
-... // 一整個復制過來
</pre>

然后開啟express服務就可以將swagger UI跑起來了。

(2)新建API文檔

在swagger Ui會分析Url中的參數來進行動態(tài)生成文檔,如:http://localhost:3200/?url=http://localhost:3200/static/eg.json那么變會根據eg.json來生成API文檔。

用express的static為項目中的json提供靜態(tài)地址。

<pre>
const app = express();
app.use('/static', express.static('./json'));
</pre>

然后新增路由,添加上傳接口。將用Swagger Editor生成的json上傳到服務器中。

(3)可視化圖形界面

上面第二條中,使用者仍然需要自己編寫yaml,然后上傳Json。使用體驗不佳。所以可以自己寫一個圖形界面的API文檔輸入界面,然后生成json。

最后編輯于
?著作權歸作者所有,轉載或內容合作請聯(lián)系作者
【社區(qū)內容提示】社區(qū)部分內容疑似由AI輔助生成,瀏覽時請結合常識與多方信息審慎甄別。
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發(fā)布,文章內容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務。

相關閱讀更多精彩內容

友情鏈接更多精彩內容