我們最近舉辦了一場免費的 Swagger 培訓,將 Swagger 新增至您現有的 API:如何大規模自動化從「程式碼優先」到 OAS 的過程,其中我們研究了不同的工具和策略,以針對現有的 API 產生和託管 OpenAPI 規格 (OAS)。
在網路研討會期間,我們收到了大量關於以各種語言開發 API 的團隊可使用的不同選項的問題。我們也收到了關於 Swagger 工具如何提供幫助,以及團隊如何協調使用 OAS 的不同 API 開發方法的問題。
作為本次網路研討會的後續,我們希望分享一些用於處理 OAS 的不同註解庫的連結,並回答活動中 Swagger 使用者提出的一些熱門問題。
我們有以 Java、C#、Python 等語言開發的 API。在哪裡可以找到這些語言的最佳註解庫?
OpenAPI 規格 (OAS) 和 Swagger 工具都有活躍的開發人員社群,他們使用並開發新工具來支援您的 API 開發。Swagger 團隊支援一些用於從現有 API 產生 OAS 的程式庫,其餘的則由 OAS 社群維護:
您可以在此處探索其他支援 OAS 的開源工具。
在哪裡可以找到更多關於使用 Gradle 或 Maven 在 SwaggerHub 中儲存定義的資訊?
SwaggerHub 提供兩個核心外掛程式,用於自動將產生的 OAS 定義匯出到該平台。
這些外掛程式支援:
在此處瞭解有關 Gradle 外掛程式的詳細資訊。
在此處瞭解有關 Maven 外掛程式的詳細資訊。
我們使用 Swagger Codegen 專案來產生伺服器存根,我們應該使用 SwaggerHub 來執行此操作的原因是什麼?
SwaggerHub 是由 Swagger Codegen 專案背後的同一團隊建立的。事實上,SwaggerHub 中的程式碼產生功能是根據開源專案的貢獻而運作的。
SwaggerHub 為您的團隊提供一個中央平台,讓您可以使用 OAS 協同處理 API 開發。SwaggerHub 提供一個單一平台來託管 OAS 定義、協同設計和記錄 API,並使用內建的程式碼產生功能產生伺服器存根和 SDK,而不是讓個別開發人員在本地電腦上安裝開源工具並獨立工作,或管理複雜的建置程序來大規模支援此操作。
SwaggerHub 還與您信任的 API 開發工具整合,無論您需要推送到 API 閘道、觸發 Jenkins 建置,還是與您的原始碼控制主機同步,SwaggerHub 都提供原生整合和外掛程式來符合您的工作流程。
SwaggerHub 中支援哪些 OAS 3.0 程式碼產生語言?
我們將持續在 SwaggerHub 中推出對新語言的支援。以下是 OAS 3.0 支援語言的最新更新:
用戶端
-
Dynamic-html
-
Html
-
Html2
-
Java
-
Jaxrs-cxf-client
-
Kotlin-client
-
Php
-
Scala
-
Swift3
-
Swift4
-
Typescript-angular
伺服器存根
-
Jaxrs-resteasy
-
Jaxrs-resteasy-eap
-
Scala-akka-http-server
-
Spring
當 API 發生變更時,規格會發生什麼情況?它是否會自動更新 SwaggerHub 中現有的規格文件?
透過將原始碼連線至 SwaggerHub 等平台,可以讓外部規格與建置程序中產生的版本保持一致。除此之外,SwaggerHub 還擁有強大的版本控制系統,可讓多個團隊、專案或變更以智慧方式編目並儲存在單一的事實來源中。
關於 API 閘道部署,您是否可以在定義中直接加入驗證,並同時將其新增至規格?
此功能通常不會納入定義本身 – 我們會將產生的 OAS 交給一個檔案,該檔案會執行一系列請求,並根據已定義的回應驗證這些請求。有一些以程式碼為主的解決方案,例如 Swagger 測試範本專案,以及許多允許匯入 OAS 並輕鬆產生測試的 GUI 驅動解決方案,例如 ReadyAPI。
是否有辦法將 SwaggerHub 註解轉換為 JIRA 工作?
目前我們沒有直接整合到 JIRA。SwaggerHub 團隊會根據使用者和組織的回饋,不斷將支援的工具和平台新增至清單中。
瞭解如何大規模自動化您的「程式碼優先」方法。
您可以在此處 觀看完整的培訓錄影。
當您準備好時,SwaggerHub 會協助各種規模的團隊使用 OAS 協調他們的 API 開發,無論您是從以設計優先方法開始新專案,還是希望使用程式碼優先方法記錄現有的 API 集。
立即免費開始使用。