 在現代的 Web 開發中,使用 OpenAPI(以前稱為 Swagger)規範來描述和定義 API ...
在現代的 Web 開發中,使用 OpenAPI(以前稱為 Swagger)規範來描述和定義 API 已經成為一種常見的做法。OpenAPI 規範提供了一種統一的方式來描述API的結構、請求和響應,使得開發人員能夠更好地理解和使用 API。
然而,手動編寫與 OpenAPI 規範匹配的客戶端代碼或服務端框架可能是一項繁瑣且耗時的任務。這就是為什麼使用 STC(Swagger Transform Code)工具可以大大簡化這個過程,並快速生成與 OpenAPI 規範一致的 TypeScript 代碼的原因。
什麼是STC(Swagger Transform Code)?
STC 是一個用於將 OpenAPI 規範的 Swagger/Apifox 文檔轉換為可執行代碼文件的工具。它提供了一種自動化的方式來讀取 OpenAPI 規範的 Swagger/Apifox 文檔,並根據規範生成與之匹配的 TypeScript 代碼。
特性:
- 支持 Swagger 2, 3 和 Apifox。
- 支持 Axios、Wechat 請求庫。
- 支持插件開發。
下載 STC
軟體沒有簽名,在打開時會被系統安全提示,允許即可。
如何使用?
下載好後,在終端(cmd)中進入到 STC 文件所在目錄。輸入如下命令:
stc --url=https://petstore3.swagger.io/api/v3/openapi.json --outDir=out
需要註意的是 STC 不會識別
~
為用戶主目錄,這是由於 Deno 自身不支持。
選項
參數名 | 類型 | 預設值 | 說明 |
---|---|---|---|
url | string | Swagger 文檔地址,或者本地路徑 | |
outDir | string | stc_out | 輸出目錄 |
platform | string | axios | 平臺,可選值:axios 、wechat |
lang | string | ts | 語言,用於輸出文件的尾碼名 |
tag | number | 從介面 url 指定標簽,預設讀取 tags 的第一個用於文件名 | |
filter | string[] | 過濾介面,符合過濾條件的介面會被生成。eg: --filter "/pet/*" ,生成 /pet 的介面,同時支持多個 --filter |
最後
目前工具還在完善中,後續會內置支持更多語言的插件。
如果你覺得不錯,可以 star 表示支持一下 https://github.com/long-woo/stc。