OpenApi(Swagger)快速轉換成 TypeScript 代碼 - STC

来源:https://www.cnblogs.com/JasonLong/archive/2023/08/05/17606115.html
-Advertisement-
Play Games

![STC Logo](https://img2023.cnblogs.com/blog/423657/202308/423657-20230804155231120-1292914581.svg) 在現代的 Web 開發中,使用 OpenAPI(以前稱為 Swagger)規範來描述和定義 API ...


STC Logo

在現代的 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 自身不支持。

image

file

選項

參數名 類型 預設值 說明
url string Swagger 文檔地址,或者本地路徑
outDir string stc_out 輸出目錄
platform string axios 平臺,可選值:axioswechat
lang string ts 語言,用於輸出文件的尾碼名
tag number 從介面 url 指定標簽,預設讀取 tags 的第一個用於文件名
filter string[] 過濾介面,符合過濾條件的介面會被生成。eg: --filter "/pet/*",生成 /pet 的介面,同時支持多個 --filter

最後

目前工具還在完善中,後續會內置支持更多語言的插件。
如果你覺得不錯,可以 star 表示支持一下 https://github.com/long-woo/stc


您的分享是我們最大的動力!

-Advertisement-
Play Games
更多相關文章
  • ## 引言 今天同事問了我一個問題,`System.Windows.Forms.Timer`是前臺線程還是後臺線程,我當時想的是它是跟著UI線程一起結束的,應該是前臺線程吧? 我確實沒有仔細研究過他們的異同,所以帶著這個疑問探究一下`System.Windows.Forms.Timer`。 ## S ...
  • # DXP TreeList 目錄樹 ## 1.需求背景 需要一個支持`勾選`,`拖動節點`,`保存各節點順序`的目錄樹。 ![image](https://jsd.cdn.zzko.cn/gh/YuanjunXu/Images@main/src/image.3wqa9fpk8xo0.jpg) ## ...
  • # Unity Shader編輯器工具類ShaderUtil 常用函數和用法 ![Unity Shader](https://cdn.pixabay.com/photo/2017/08/30/01/05/milky-way-2695569_960_720.jpg) Unity的Shader編輯器工具 ...
  • 恩兔N2是一個家庭存儲的系列產品, NS-1 是其中最小的一個版本, 基於海思ARM64 CPU Hi3798MV200. 和其他設備相比, 特點是內置2.5寸SATA盤位, 並且帶千兆網口. 這個設備比較小眾, 存量很小, 不如斐訊N1, 玩客雲那樣有廣泛的認知度, 甚至在百度和Google上搜索... ...
  • 博客推行版本更新,成果積累制度,已經寫過的博客還會再次更新,不斷地琢磨,高質量高數量都是要追求的,工匠精神是學習必不可少的精神。因此,大家有何建議歡迎在評論區踴躍發言,你們的支持是我最大的動力,你們敢投,我就敢肝 ...
  • # MySQL多實例 ## 介紹 **應用場景**: **資金緊張公司** 若公司資金緊張,公司業務訪問量不太大,但又希望不同業務的資料庫服務各自能夠儘量獨立地提供服務而互相不受影響,或者,還有需要主從複製等技術提供備份或讀寫分離服務的需求,那麼,多實例就再好不過了。 **用戶併發訪問量不大的業務* ...
  • > 本文實驗所需環境 > > 1. vmware workstation pro 17 > 2. window server 2022 鏡像文件:zh-cn_windows_server_2022_updated_april_2023_x64_dvd_644d5669.iso > > > > 鏡像文 ...
  • 分庫分表是大型互聯網應用經常採用的一種數據層優化方案,常見的分庫分表中間件如 sharding-jdbc、mycat 都已經比較成熟,基本上可以應對我們一般的分庫分表需求。 做過分庫分表的同學應該知道,在給業務系統做分庫分表改造過程中,難的不是如何使用這些組件進行分庫分表,而是如何將非分庫分表的系... ...
一周排行
    -Advertisement-
    Play Games
  • 移動開發(一):使用.NET MAUI開發第一個安卓APP 對於工作多年的C#程式員來說,近來想嘗試開發一款安卓APP,考慮了很久最終選擇使用.NET MAUI這個微軟官方的框架來嘗試體驗開發安卓APP,畢竟是使用Visual Studio開發工具,使用起來也比較的順手,結合微軟官方的教程進行了安卓 ...
  • 前言 QuestPDF 是一個開源 .NET 庫,用於生成 PDF 文檔。使用了C# Fluent API方式可簡化開發、減少錯誤並提高工作效率。利用它可以輕鬆生成 PDF 報告、發票、導出文件等。 項目介紹 QuestPDF 是一個革命性的開源 .NET 庫,它徹底改變了我們生成 PDF 文檔的方 ...
  • 項目地址 項目後端地址: https://github.com/ZyPLJ/ZYTteeHole 項目前端頁面地址: ZyPLJ/TreeHoleVue (github.com) https://github.com/ZyPLJ/TreeHoleVue 目前項目測試訪問地址: http://tree ...
  • 話不多說,直接開乾 一.下載 1.官方鏈接下載: https://www.microsoft.com/zh-cn/sql-server/sql-server-downloads 2.在下載目錄中找到下麵這個小的安裝包 SQL2022-SSEI-Dev.exe,運行開始下載SQL server; 二. ...
  • 前言 隨著物聯網(IoT)技術的迅猛發展,MQTT(消息隊列遙測傳輸)協議憑藉其輕量級和高效性,已成為眾多物聯網應用的首選通信標準。 MQTTnet 作為一個高性能的 .NET 開源庫,為 .NET 平臺上的 MQTT 客戶端與伺服器開發提供了強大的支持。 本文將全面介紹 MQTTnet 的核心功能 ...
  • Serilog支持多種接收器用於日誌存儲,增強器用於添加屬性,LogContext管理動態屬性,支持多種輸出格式包括純文本、JSON及ExpressionTemplate。還提供了自定義格式化選項,適用於不同需求。 ...
  • 目錄簡介獲取 HTML 文檔解析 HTML 文檔測試參考文章 簡介 動態內容網站使用 JavaScript 腳本動態檢索和渲染數據,爬取信息時需要模擬瀏覽器行為,否則獲取到的源碼基本是空的。 本文使用的爬取步驟如下: 使用 Selenium 獲取渲染後的 HTML 文檔 使用 HtmlAgility ...
  • 1.前言 什麼是熱更新 游戲或者軟體更新時,無需重新下載客戶端進行安裝,而是在應用程式啟動的情況下,在內部進行資源或者代碼更新 Unity目前常用熱更新解決方案 HybridCLR,Xlua,ILRuntime等 Unity目前常用資源管理解決方案 AssetBundles,Addressable, ...
  • 本文章主要是在C# ASP.NET Core Web API框架實現向手機發送驗證碼簡訊功能。這裡我選擇是一個互億無線簡訊驗證碼平臺,其實像阿裡雲,騰訊雲上面也可以。 首先我們先去 互億無線 https://www.ihuyi.com/api/sms.html 去註冊一個賬號 註冊完成賬號後,它會送 ...
  • 通過以下方式可以高效,並保證數據同步的可靠性 1.API設計 使用RESTful設計,確保API端點明確,並使用適當的HTTP方法(如POST用於創建,PUT用於更新)。 設計清晰的請求和響應模型,以確保客戶端能夠理解預期格式。 2.數據驗證 在伺服器端進行嚴格的數據驗證,確保接收到的數據符合預期格 ...