您好,登錄后才能下訂單哦!
本篇文章為大家展示了.NET Core WebAPI如何集成Swagger做接口管理,內容簡明扼要并且容易理解,絕對能使你眼前一亮,通過這篇文章的詳細介紹希望你能有所收獲。
什么是Swagger?
Swagger 是一個規范且完整的框架,用于生成、描述、調用和可視化 RESTful 風格的 Web 服務。
Swagger 的目標是對 REST API 定義一個標準且和語言無關的接口,可以讓人和計算機擁有無須訪問源碼、文檔或網絡流量監測就可以發現和理解服務的能力。當通過 Swagger 進行正確定義,用戶可以理解遠程服務并使用最少實現邏輯與遠程服務進行交互。與為底層編程所實現的接口類似,Swagger 消除了調用服務時可能會有的猜測。
Swagger 有什么優勢?
支持 API 自動生成同步的在線文檔:使用 Swagger 后可以直接通過代碼生成文檔,不再需要自己手動編寫接口文檔了,對程序員來說非常方便,可以節約寫文檔的時間去學習新技術。
提供 Web 頁面在線測試 API:光有文檔還不夠,Swagger 生成的文檔還支持在線測試。參數和格式都定好了,直接在界面上輸入參數對應的值即可在線測試接口。
在.NET Core中如何使用Swagger?
(1)準備工作
創建一個.NET Core WebApi 項目
創建一個Model類庫
(2)在項目中引入Swagger
在WebApi項目中執行命令:Install-package Swashbuckle.AspNetCore
(3)在StarUp.cs的ConfigureServices中添加代碼
#region Swagger services.AddSwaggerGen(c => { c.SwaggerDoc("v1", new Info { Version = "v1.1.0", Title = "Swagger WebAPI", Description = "XXX項目API文檔", TermsOfService = "None", Contact = new Swashbuckle.AspNetCore.Swagger.Contact { Name = "XXX項目", Email = "273145719@qq.com" , Url = "https://www.cnblogs.com/NBIDataVis/" } }); var basePath = Path.GetDirectoryName(typeof(Program).Assembly.Location); //添加接口XML的路徑 var xmlPath = Path.Combine(basePath, "TrySwaggerCore.xml"); //如果需要顯示控制器注釋只需將第二個參數設置為true c.IncludeXmlComments(xmlPath, true); }); #endregion
(4)在StarUp.cs的Configure中添加代碼
#region Swagger app.UseSwagger(); app.UseSwaggerUI(c => { c.SwaggerEndpoint("/swagger/v1/swagger.json", "ApiDocument V1"); }); #endregion
(5)運行后進入/swagger目錄 即可查看Swagger已經啟用
問題匯總:
(1)如果需要將WebApi的默認啟動頁設為Swagger則在Properties中
(2)在這里大家會發現運行后接口的注釋并沒有顯示,我們需要配置注釋XML文件
在WebAPI項目上點擊右鍵-》屬性-》生成-》XML文檔文件
另外切記此處代碼第二個參數需要設置為True,否則將不顯示控制器級別的注釋,只顯示接口注釋
(3)如果大家會發現有了許多警告,強迫癥患者看這里,我們只需要在生成中強制過濾1591的警告即可
上述內容就是.NET Core WebAPI如何集成Swagger做接口管理,你們學到知識或技能了嗎?如果還想學到更多技能或者豐富自己的知識儲備,歡迎關注億速云行業資訊頻道。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。