這個OpenAPI工具的功能
前端工作往往在後端準備好之前就開始,並且手寫已經具備規範的API型別是浪費的努力。貼上一個OpenAPI 3.x或Swagger 2.0文件在JSON或YAML中,這個工具會生成三個東西:每次操作的模擬響應,所有方案的TypeScript型別,以及一個小型別的** fetch客戶端**,每個端點都有一個函式。所有的內容都是在瀏覽器中生成的,所以私人或內部API規格永遠不會上傳。
使用方法
- 貼上您的規格或上傳檔案。接受JSON和YAML。
- 終點列表顯示每個操作及其方法和路徑。
- 開啟 模擬資料 選項卡,選擇操作,以檢視從模式示例,格式和編號構建的樣本響應。
- 在
components/schemas(或 Swagger 2 中definitions) 生成的介面中切換到 TS型別 - 切換到 TS客戶端,以便使用現成的客戶端,並將其複製到您的專案中。
模仿是如何產生的
- 規格中的
example和examples值總是贏。 enum選擇第一個值;default被尊重。- 字串格式產生可信的值:
email,uuid,date-time,uri,ipv4等。 - 屬性名稱提供提示,所以
name,price或createdAt看起來很現實。 $ref,allOf,oneOf和anyOf被解決;遞迴引用被安全切斷。- 模擬是對操作的決定性,所以它們不會在每次更新時改變。
使用生成的客戶端
客戶端輸出一個BASE_URL常數和一個非同步函式,以其operationId命名 (或缺失時的方法和路徑),帶有鍵入路徑引數,查詢引數和請求體,返回鍵入的響應。它只依賴於fetch,所以它可以在瀏覽器,Node 18+,Deno和Bun中執行。