Intern Day153 - Swagger UI顯示介面數目和專案中對應不上解決辦法
阿新 • • 發佈:2021-07-20
問題概述:想在Swagger UI中調專案中的A介面時,發現不存在。
解決辦法:其實是因為別人對A介面進行了分組,我們需要在Swagger UI右上角中的select a definition中進行分組選擇即可。
問題原因:
- 我們會發現A介面程式碼對應的檔案最上方有這兩行程式碼:
[Route("/api/xx/xxx/xxxx")] 介面路由
[ApiExplorerSettings(GroupName = "b")] 介面分組,分給b組
- 針對分組後的介面,我們需要到對應的分組下進行檢視。ASP.NET Core是如何將分組顯示在Swagger UI中呢,其實有一個檔案叫做
Startup.Swagger.cs
app.UseSwaggerUI(c => { c.SwaggerEndpoint("/api/專案名1/swagger/分組名1/swagger.json", "顯示在Swagger上的名字選項1"); c.SwaggerEndpoint("/api/專案名1/swagger/分組名2/swagger.json", "顯示在Swagger上的名字選項2"); c.SwaggerEndpoint("/api/專案名2/swagger/分組名3/swagger.json", "顯示在Swagger上的名字選項3"); }