目錄導航 一、安裝 二、配置 三、調用 四、錯誤記錄 一、安裝 新建一個沒有身份驗證的mvc項目 - SwaggerMvc5Demo,然後添加一個名為Remote(自定義)且包含基礎讀寫(不想手寫)的ApiController 開源地址:https://github.com/domaindriven ...
目錄導航
一、安裝
新建一個沒有身份驗證的mvc項目 - SwaggerMvc5Demo,然後添加一個名為Remote(自定義)且包含基礎讀寫(不想手寫)的ApiController 開源地址:https://github.com/domaindrivendev/Swashbuckle 使用以下方法來添加 Swashbuckle:- 從“程式包管理器控制台”視窗:Install-Package Swashbuckle -Version 5.6.0
- 從“管理 NuGet 程式包”對話框中:
- 右鍵單擊“解決方案資源管理器” > “管理 NuGet 包”中的項目
- 將“包源”設置為“nuget.org”
- 在搜索框中輸入“Swashbuckle”
- 從“瀏覽”選項卡中選擇“Swashbuckle”包,然後單擊“安裝”
二、配置
1.項目屬性->勾選生成xml文檔文件 2.添加導航鏈接 在_Layout.cshtml文件中添加代碼 <li>@Html.ActionLink("Swagger Help", "", "Swagger", new { area = "" }, null)</li> 3.修改SwaggerConfig.cs文件 安裝完成後,在文件夾App_Start自動生成一個配置文件 swagger.config。這裡可以做多版本控制,定義擴展功能,自定義顯示ui的樣式腳本,可以配置過濾、許可權等。 例如: (1)為介面添加xml註釋 string path = string.Format("{0}/bin/SwaggerMvc5Demo.XML", System.AppDomain.CurrentDomain.BaseDirectory); c.IncludeXmlComments(path); 使用前 使用後 (2)使用特性 [Obsolete] 在config中 開啟 c.IgnoreObsoleteProperties();三、調用
1.直接調用 只要輸入參數id,即可調用,非常方便 2.AutoRest AutoRest (https://github.com/Azure/AutoRest), 簡單來說,就是一個EXE工具,可以根據Swagger的結構生成服務的客戶端,這個客戶端可以讓你像調用本地方法一樣調用服務,方法內部包裝了Http請求。 詳細教程請看 https://www.cnblogs.com/Leo_wl/p/5982882.html 擴展:ABP集成swagger http://www.cnblogs.com/wer-ltm/p/5776024.html四、錯誤記錄
swagger出現問題:not supported by swagger 2.0
一個controller中只能有一個HttpGet請求,多了就會報錯。建議減少重載方法,將其他Get方法分開
如果在swagger.config中加上c.ResolveConflictingActions(apiDescriptions => apiDescriptions.FirstOrDefault());則會只顯示第一個get方法
原文:https://blog.csdn.net/jin80506/article/details/77737470