跳到內容

什麼是 Restorm?

Restorm 是一套桌面應用程式(Windows、macOS、Linux),把圍繞一個 API 所要做 的事全部集中在同一個專案裡:呼叫它、模擬它、串接呼叫、為整體做版本控制,並在 CI 中執行。

大多數 API 用戶端到 HTTP 與 GraphQL 就停住了,Restorm 則把十五種協定都當成 一等公民,每一種都有專屬的編輯器與相應的回應檢視:

HTTP · GraphQL · gRPC · SOAP · WebSocket · Socket.IO · MQTT · SSE · STOMP · OData · JSON-RPC(單筆與批次)· tRPC · Redis · AMQP / RabbitMQ · Kafka。

具體來說:同一個專案可以同時容納建立訂單的 REST 呼叫、接收確認訊息的 MQTT 訂閱,以及驗證事件確實已發佈的 Kafka 請求。請參閱 協定目錄

某個專案的側邊欄樹狀清單:同一個資料夾裡混放著 GraphQL、WebSocket、SSE、Redis、Kafka、AMQP、STOMP、gRPC、SOAP、OData、tRPC、JSON-RPC、MQTT 與 Socket.IO 請求,旁邊則是 HTTP 操作的資料夾

Restorm 也能託管一個服務,而不只是呼叫它。您可以建立一個伺服器 — 它是 樹狀清單裡地位完整的項目,從新增 ▸ HTTP 伺服器(或 GraphQL、gRPC、SOAP、 WebSocket、Socket.IO、MQTT、OData)加入 — 為它指定一條路由與一份回應,Restorm 就會在 localhost 上接聽。沒有第三方服務,沒有網路往返,而且 {{variables}} 會在提供回應的那一刻解析。

請參閱伺服器模式

情境是一張圖:一個個方塊(呼叫某個請求、測試條件、迴圈、轉換資料、執行 程式碼)由負責傳遞數值的連線串起來。它取代了其他工具的請求前/請求後指令碼, 而且始終保持可讀。

方塊共有九十種類型,從單純的 If 到 JSON 結構驗證,一直到 Kafka 連線。請參閱 情境

一個情境,包含一個 HTTP 請求節點、一個針對狀態碼的斷言、一次數值擷取,以及一個 If 節點

在本機、以檔案形式、可納入版本控制

Section titled “在本機、以檔案形式、可納入版本控制”

一個 Restorm 專案就是您磁碟上的一個 .restorm 檔案(預設為 YAML),或是 一整棵資料夾樹。沒有任何東西存放在我們這裡。序列化是決定性的 — 鍵的順序 標準化、識別碼以穩定的方式衍生 — 因此未做任何修改的儲存不會產生任何 diff, 而對 API 專案做程式碼審查也真正可行。

此外,Restorm 內建一個看得懂這個格式的 git 用戶端: 提交訊息是逐一實體產生的,而衝突解決會把兩個版本各自顯示在它們真正的編輯器裡。

有兩個自動化介面:

  • 命令列restorm --open projet.restorm --run "Tests de fumée" --headless 會在沒有視窗的情況下執行一個情境,把記錄寫到標準輸出,並回傳可在 CI 中判讀的 結束代碼。請參閱 在 CI 中以 headless 方式執行
  • 內建的 MCP 伺服器:AI 代理程式(Claude Code、Cursor…)可以讀取專案樹、 建立請求、執行它們並操控介面。請參閱 透過 MCP 操控 Restorm

Restorm 內建一道應用層防火牆:任何並非來自您專案中某個 URL 的對外呼叫, 預設都會被封鎖,並請您決定是否允許。某個會偷偷回報資訊的依賴套件,不可能在您 不知情的情況下這麼做。請參閱防火牆

Restorm 可以免費使用,請求數與專案數都沒有上限,而且所有執行協定都包含在 Community 版中。Pro 與 Enterprise 版解鎖的是功能權限(在 CI 中以 headless 方式執行、內建 git、進階 MCP 工具、SSO…) — 而不是配額。請參閱 方案與功能權限