調研
市面上的API 管理平台很多, 比如 :
swagger
優點
:
- OpenAPI,不針對特定的語言的API
- 支持Json和yaml來編寫API文檔,並且支持導出為json、yaml、markdown等格式
- 自動生成相應的SDK
- 界面清晰,無論是editor的實時展示還是ui的展示都十分人性化
缺點
:
- 代碼的侵入太大
- 並沒減少后端工作量
- 不支持 Mock Server
- 無團隊功能, 比如權限控制
- yaml文件只能和API項目本身放在一起
- 官方文檔不夠完善, 只有介紹不同模塊
YAPI
優點
:
- UI 舒服, 用戶操作體驗極佳
- 可視化接口管理, 支持附件上傳、圖片預覽等場景富文本編輯器功能
- 支持內網部署
- 在線測試, 自動化測試
- 多版本/ 團隊協作功能
- Mock Server
- 多種格式的數據導入導出
- 支持自定義插件
- 提供開發 API
Docway
我開始用的時候 還叫 小幺雞, 除了自定義插件功能沒有 其他基本和 YAPI 相似
RAP2
優點
:
- Mock Server
- 支持JSON/XML數據導入
- 支持內網部署
- 團隊協作功能
功能基本類似 YAPI
eolinker
優點
:
功能強大跟 YAPI 相似, 除了 API 管理, 還有提供了微服務網關, API 監控等功能, 數據庫管理等.
比較適合初創團隊
缺點
:
- 這么多功能當然不是白給的, 白嫖是不可能白嫖的
需求
看了這么多, 還是需要考慮一下我們的基本需求.
- 最少工作量, 期望是我只在代碼, 或者文檔, 或者腳本 其中一處寫上說明, 其他地方不用重復編輯, 不想多寫除了備注說明以外的東西
- 開源, 能白嫖就絕不白給
- 團隊協作功能, 需要權限管理, 項目分組, 人員分組, 項目移動, 復制等功能
- 獨立部署, 基本開發文檔都不能對外, 開源之前一般也不會選擇放在在線平台上
- 自動化測試, 在線測試
- Mock Server
- 數據導入導出 支持 markdown, json , postman
- 支持二次開發
好了看到這里, 基本可以確定使用YAPI, 下面簡單介紹一下 如何使用 YAPI
方案
這里我們使用
YAPI
+ idea plugin:EasyYapi
的組合.
優點
- 非常全面的 API 管理功能.
- YAPI 可以無縫對接 swagger , 為 api 遷移提供便利
- YAPI 的開放 API 和插件機制提供了很好的伸縮性, 為定制化和擴展提供了可能. 可以對接 其他類似 CI 的平台
- EasyYapi 提供 api 多種導出功能
- 使用 EasyYapi 的同時, 可以使代碼注釋更加規范.
寫在最后
還是老三樣. 歡迎 點贊, 轉發, 評論 ~