這是我們的第一篇月報,每個月和每個來之不易的開發者分享產品故事以及產品進展。
在 5.20 這個極具中國特色的「節日」裡,Eoapi 釋出了 1.0.0 版,三個程式設計師掉了半年頭髮堆出了第一個正式版本。
把 Eoapi 介紹給大家的過程中,我們遇到的最多問題是:
Postman 出現的時間,是八年前,幾乎是同型別 API 工具的祖師爺。
毋庸置疑它是一款優秀的產品,在那個使用 Curl、瀏覽器、抓包工具偵錯 API 的年代,這款支援通過介面對 API 發起測試的工具令人眼前一亮。
那我們為什麼還要做 Eoapi 呢?
- 商業工具不夠開放
商業工具不夠開放,除非官方支援,否則很難和其他平臺打通。
理想中的使用者每天都在使用我們的產品解決任何問題,而實際上使用者每天會和各種不同的工具打交道,並沒有足夠多的時間專注在使用你的產品。
△ by Jonathan Holt @ Dribbble
所以足夠簡單,同時打磨核心功能,定義好產品的邊界很重要。
我們不想做一個 All in one 的工具,如果沒法滿足使用者的所有需求,那就足夠開放讓使用者選擇按照他們喜歡的方式使用各個產品。
沒有什麼能比程式碼開源更開放了!
所以從去年 11 月開始,我們開始立項、組團隊開始做 Eoapi。
截圖是我們的第一個使用者,我在調研時問他:你期待的 API 工具是什麼樣子?
他回答:希望各個工具不要做資料孤島,能連通多個產品。
如果說程式碼開源是我們開放的第一步,那第二步就是加入外掛系統了。
如果只是程式碼開源,想要拓展功能仍然比較困難,我知道很多團隊會選擇在原始碼的基礎上二次開發,但當選擇二次開發的那一刻起,可能就和後續的官方更新 say goodbye 了,對使用者和官方來說都是一種損失,而外掛系統就是解決這個問題的一個很好的方案。
外掛系統讓開發者群體——一群極具創造力的人以更簡單的方式參與共建,擴充套件功能、複用功能、碰撞更多可能。
- 團隊需要本地部署
商業產品資料一般放在雲端,考慮到安全性,國內大多數公司會將 API 託管在自己的伺服器,有資源的大公司造輪子,沒資源的小團隊使用開源工具改造改造。
Eoapi 可以單機使用,資料儲存到本地,也支援在自己的伺服器遠端資料來源,你完全可以把資料掌握在自己手裡。
- 更流暢的共同作業
Postman 功能比較垂直,單點功能設計很棒,但實際用於團隊共同作業時功能操作邏輯不夠連貫,也不夠貼合國人開發共同作業場景。
國外的需求更偏向個體效率,而國內的需求更偏向於管理效率。如何在滿足個體效率的同時貼合國內的管理效率,這是 Eoapi 想要找到的平衡。
我們不會說 Eoapi 是一款針對中國開發者研發的產品,我們的使用者是所有開發者,不分國界。
我心目中真正好的 API 工具,遠不止偵錯,還可以讓開發者:
- 更快地開發更規範、更穩定的 API
- 在工具上記錄的 API 資料發揮更大的價值
- 共同作業更加地順暢
我們更新了什麼?
劃重點:
- Eoapi 上線外掛廣場
- Eoapi 支援系統設定
- 官方檔案加入開發者檔案
- 開發者命令列工具 @eoapi/cli 上線
- 支援 M1 核心 Mac 安裝包
本月產品更新的主題是:一個外掛的一生。
外掛的【開發】->【偵錯】->【上傳】->【上架】->【安裝】->【使用】
外掛系統
-
外掛廣場
我們可以通過外掛廣場在應用中搜尋、管理外掛,目前有官方提供的兩個外掛:
- 匯出 Swagger OpenAPI 格式外掛
- 將 Eoapi 介面資料同步到 Eolink
可以通過反饋聯絡外掛開發者建議需求、反饋缺陷
-
開發者檔案
開發者檔案是開發者體驗必不可少的一環,
Eoapi 檔案準則:說人話、目的清晰、用詞準確、圖文並貌、最好有範例
ps:如果發現檔案有誤或者有改進建議,檔案最下方可以提 Issue 或 Pull request 貢獻此檔案~
-
外掛程式碼範例
倉庫地址:https://github.com/eolinker/eoapi-extensions
程式碼範例是瞭解一個外掛檔案結構最快速的方式,目前支援生成的功能模板:
-
開發者命令列工具
倉庫地址:https://github.com/eolinker/eoapi-cli
我們可以通過命令列快速生成一個外掛模板。
理論上來說,實現一個匯出外掛只需要:
除去函數實現時間,從設定到上傳外掛只需要 5 分鐘。
API 概況
可以在概況頁
- 匯出 API 資料
- 將 API 推播到其他平臺:需要安裝相關的外掛
後續計劃和各大平臺合作,因為產品起步期沒有流量(弱弱地),合作推進會比較困難,所以先選擇了 Eolink SaaS 產品進行合作,可以直接將 Eoapi 的介面同步到 Eolink 的某個專案。
相信隨著使用者數增加以及官方的努力,通過 API 資料打通的工具/平臺會越來越多。
目前已知場景:
- 低程式碼平臺:從 API 檔案得到返回值格式,繫結低程式碼元件的欄位
- API 閘道器:從 API 檔案資料快速生成閘道器路由,減少手動錄入的成本
- API 監控平臺
- Mock 平臺,例如 Mock Lab
- 雲服務匯流排 ESB、CSB
如果有其他場景,歡迎反饋,我們會及時響應(下面有微信群,當然上 github 提 Issue 更好~)
系統設定
通過系統設定做一些個人的個性化設定,以及填寫外掛的所需的設定項。
其他
# 號代表相應的 issue、pull request 編號
功能預告
6 月圍繞共同作業功能、國際化實現功能拓展。
- 匯入外掛核心支援 —— 匯入 Swagger、Postman、Eolink 等平臺資料
- Mock —— 前端使用 Mock 協助聯調
- 遠端資料來源 —— 資料來源部署在自己的伺服器,多人共同作業
- 多語言支援 —— 國際化支援
如果你對我們的開源專案感興趣,可以來這裡:
Github: