Swagger是一個接口文檔生成工具,同時提供接口測試調用的輔助功能。框架
Swagger能成爲最受歡迎的REST APIs文檔生成工具之一,有如下幾個緣由:編輯器
你能夠經過一個文本編輯器來編輯 Swagger 文件,或者你也能夠從你的代碼註釋中自動生成。各類工具均可以使用 Swagger 文件來生成互動的 API 文檔。工具
注意:用 Swagger 文件生成互動的 API 文檔是最精簡的,它展現了資源、參數、請求、響應。可是它不會提供你的API如何工做的其餘任何一個細節。學習
Swagger 分紅一些不一樣的塊。測試
Swagger spec:這一塊對元素的嵌套、命令等採用官方模式。若是你想要對 Swagger 文件手動編碼,你必須很是熟悉 Swagger spec。編碼
Swagger editor:這是在線編輯器,用於驗證你的 YML 格式的內容是否違反 Swagger spec 。YML 是一種句法,依賴於空格和嵌套。你須要對 YML 句法很熟悉才能很好的遵照 Swagger spec 規範。Swagger 編輯器會標出錯誤而且給你格式提醒(Swagger spec 文件可使用 JSON 或者 YAML 中的任意一種格式)線程
Swagger-UI:這是一套 HTML/CSS/JS 框架用於解析遵照 Swagger spec 的 JSON 或 YML 文件,而且生成API文檔的UI導航。它能夠將你的規格文檔轉換成Swagger Petsotre-like UI。3d
Swagger-codegen:這個工具能夠爲不一樣的平臺生成客戶端 SDK(好比 Java、JavaScript、Python 等)。這些客戶端代碼幫助開發者在一個規範平臺中整合 API ,而且提供了更多健壯的實現,可能包含了多尺度、線程,和其餘重要的代碼。SDK 是用於支持開發者使用 REST API 的工具。code