1. 程式人生 > >常見的幾個介面管理平臺簡介

常見的幾個介面管理平臺簡介

  年前最後一更,自從Internet服務開發以來,作為開發者陣營,我們已經在實踐中證明了前端和後端分離開發模型正逐漸成為越來越多的Internet公司構建服務和應用程式的一種方式。

  前端和後端分離的優點很多。一個重要的優點是,對於後臺服務(系統),它只需要提供一個統一的API介面,即可被多個客戶端重用,並且分工和協作更加精細。大大提高了效率。目前某些公司介面文件管理方式採用word,wiki及html形式,由於版本迭代較快。隨之而來的是

  • 介面文件管理混亂,介面描述不清;
  • 間接導致測試人員測試效率低下,後續問題無法追蹤,測試無法保障
  • 資源分散,難以共享,雖然有SVN,git,但由於許可權問題,不能及時檢視
  • 由於專案較多,介面文件排版各異,檢視不便

  由此可見介面文件規範是多麼的重要,作者推薦市面上常見的幾款介面管理平臺,僅供參考

  1.Swagger

  Swagger是一個規範和完整的框架,用於生成、描述、呼叫和視覺化 RESTful 風格的 Web 服務。它可以方便地和 Spring MVC、Spring Boot等框架進行快速整合,並且通過結合諸如Swagger-UI等元件,將 controller層的方法進行方便地視覺化展示,像方法註釋,方法引數,方法返回值等都提供了相應的使用者介面

   專案地址:https://swagger.io

  2.YApi

  YApi 是高效、易用、功能強大的 api 管理平臺,旨在為開發、產品、測試人員提供更優雅的介面管理服務。它可以幫助開發者輕鬆建立、釋出、以及維護API。除此之外,YApi 還為使用者提供了優秀的互動體驗,開發人員只需利用平臺提供的介面資料寫入工具以及簡單的點選操作就可以實現介面的管理。

特性:

  • 基於 Json5 和 Mockjs 定義介面返回資料的結構和文件,效率提升多倍
  • 扁平化許可權設計,即保證了大型企業級專案的管理,又保證了易用性
  • 類似 postman 的介面除錯
  • 自動化測試, 支援對 Response 斷言
  • MockServer 除支援普通的隨機 mock 外,還增加了 Mock 期望功能,根據設定的請求過濾規則,返回期望資料
  • 支援 postman, har, swagger 資料匯入
  • 免費開源,內網部署,資訊再也不怕洩露了

 

  博主有個問題想諮詢的時候,特意去加github上面的群,但加群的時候,心中sfowfwfpw,先這樣吧

 

 

  難點:如果需要要執行自動化測試,需要編寫指令碼,好像比較難,可能是博主太菜了吧(大哭.gif)

  github原始碼地址:https://github.com/YMFE/yapi

  部署文件地址:https://hellosean1025.github.io/yapi/documents/index.html

  3.eolinker

  開箱即用的API研發管理方案,無需繁瑣的配置,支援讀取程式碼註解生成API文件,或者是通過UI介面快速建立全面的API文件。通過Mock API、API變更通知、版本管理等服務,讓團隊更敏捷。

  

  專案地址:https://www.eolinker.com

  疑問:github上面原始碼已經被刪除,需要下載原始碼自己搭建的就不要想了

  4.showdoc

  一個非常適合IT團隊的線上API文件、技術文件工具

  專案地址:https://www.showdoc.cc/

  5.DOClever

  DOClever是一個視覺化免費開源的介面管理工具 ,可以分析介面結構,校驗介面正確性, 圍繞介面定義文件,通過一系列自動化工具提升我們的協作效率。DOClever前後端全部採用了javascript來作為我們的開發語言,前端用的是vue+element UI,後端是express+mongodb,這樣的框架集成了高併發,迭代快的特點,保證系統的穩定可靠。

主要特性:

  • 可以對介面資訊進行編輯管理,支援 get,post,put,delete,patch 五種方法,支援 https 和 https 協議,並且支援 query,body,json,raw,rest,formdata 的引數視覺化編輯。同時對 json 可以進行無限層次視覺化編輯。並且,狀態碼,程式碼注入,markdown 文件等附加功能應有盡有。

  • 介面除錯執行,可以對引數進行加密,從 md5 到 aes 一應俱全,返回引數與模型實時分析對比,給出不一致的地方,找出介面可能出現的問題。如果你不想手寫文件,那麼試試介面的資料生成功能,可以對介面執行的資料一鍵生成文件資訊。

  • mock 的無縫整合,DOClever 自己就是一個 mock 伺服器,當你把介面的開發狀態設定成已完成,本地 mock 便會自動請求真實介面資料,否則返回事先定義好的 mock 資料。

  • 支援 postman,rap,swagger 的匯入,方便你做無縫遷移,同時也支援 html 檔案的匯出,方便你離線瀏覽!

  • 專案版本和介面快照功能並行,你可以為一個專案定義 1.0,1.1,1.2 版本,並且可以自由的在不同版本間切換回滾,再也不怕介面資訊的遺失,同時介面也有快照功能,當你介面開發到一半或者介面需求變更的時候,可以隨時檢視之前編輯的介面資訊。

  • 自動化測試功能,目前市面上類似平臺的介面自動化測試大部分都是偽自動化,對於一個複雜的場景,比如獲取驗證碼,登陸,獲取訂單列表,獲取某個特定訂單詳情這樣一個上下文關聯的一系列操作無能為力。而 DOClever 獨創的自動化測試功能,只需要你編寫極少量的 javascript 程式碼便可以在網頁裡完成這樣一系列操作,同時,DOClever 還提供了後臺定時批量執行測試用例並把結果傳送到團隊成員郵箱的功能,你可以及時獲取介面的執行狀態。

  • 團隊協作功能,很多類似的平臺這樣的功能是收費的,但是 DOClever 覺得好東西需要共享出來,你可以新建一個團隊,並且把團隊內的成員都拉進來,給他們分組,給他們分配相關的專案以及許可權,釋出團隊公告等等。

 

  

  github原始碼地址:https://github.com/sx1989827/DOClever

  官網地址:http://doclever.cn/controller/index/index.html

  幫助文件地址http://doclever.cn/controller/read/read.html#5a532f98b7731a2ba86093b3

  6.RAP2

  阿里媽媽前端團隊出品的開源介面管理工具RAP第二代,RAP通過GUI工具幫助WEB工程師更高效的管理介面文件,同時通過分析介面結構自動生成Mock資料、校驗真實介面的正確性,使介面文件成為開發流程中的強依賴。有了結構化的API資料,RAP可以做的更多,而我們可以避免更多重複勞動。

  基於RAML的介面定義、文件生成、Mock Server完成了定義和使用的分離,通過一套規範完成的介面定義,可以用不同的工具得到適應不同API管理系統的輸出,有更多的可能性,同時保持了核心定義不變。

  RAP較之於RAML,前者更加集中,所有的定義、文件、mock都在同一個服務中完成,並且實時生效,方便快捷,如果只考慮方便易用,RAP是更好的選擇,而RAML顯得更加繁瑣,更適合於公開的介面定義,方便在各個系統之間流轉。

 

  github原始碼地址:https://github.com/thx/rap2-delos

以上資訊均來自網際網路,如有侵權,請聯絡作者刪除,