Asp.Net Core配置Swagger

本文主要参考:Using Swagger with ASP.net Core

1.创建WebApi项目

本文使用ASP.Net Core Web API项目模板演示Swagger到使用,首先创建Web Api项目。

通过Nuget安装Swashbuckle.AspnetCore

也可以通过指令

Install-Package Swashbuckle.AspNetCore

2.Swagger配置

配置ConfigureServices

1     public void ConfigureServices(IServiceCollection services)
2     {
3         services.AddMvc();
4         services.AddSwaggerGen(swagger =>
5         {
6             swagger.SwaggerDoc("v1", new Swashbuckle.AspNetCore.Swagger.Info { Title = "Swagger Demo" });
7         });
8     }

配置Configure

 1     public void Configure(IApplicationBuilder app, IHostingEnvironment env)
 2     {
 3         app.UseHttpsRedirection();
 4         app.UseMvc();
 5 
 6         app.UseSwagger();
 7         app.UseSwaggerUI(c =>
 8         {
 9             c.SwaggerEndpoint("/swagger/v1/swagger.json", "Swagger Demo");
10         });
11     }

配置文件输出

3.运行代码

https://localhost:[port]/swagger/index.html

4.异常

4.1看不到swagger页面

添加引用 Microsoft.AspNetCore.StaticFiles

4.2Failed to load API definition

解决方法:一定是某个接口没有添加【HttpGet】或者【HttpPost】声明。

参考:https://stackoverflow.com/questions/50209122/swashbuckle-swagger-asp-net-core-failed-to-load-api-definition

原文地址:https://www.cnblogs.com/imstrive/p/10252162.html