DotnetCore之旅---swagger的简单使用
Posted johnyong
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了DotnetCore之旅---swagger的简单使用相关的知识,希望对你有一定的参考价值。
swagger
swagger用于可视化api,并可实现对api格式化说明以及测试。
使用swagger
首先通过nuget引入Swashbuckle.AspNetCore(切记不是swagger)
其次修改程序生成属性,分别配置程序生成路径和xml文档生成路径
第三部修改startup类
1 using System; 2 using System.Collections.Generic; 3 using System.IO; 4 using System.Linq; 5 using System.Threading.Tasks; 6 using Microsoft.AspNetCore.Builder; 7 using Microsoft.AspNetCore.Hosting; 8 using Microsoft.AspNetCore.Mvc; 9 using Microsoft.Extensions.Configuration; 10 using Microsoft.Extensions.DependencyInjection; 11 using Microsoft.Extensions.Logging; 12 using Microsoft.Extensions.Options; 13 using Swashbuckle.AspNetCore.Swagger; 14 15 namespace NetCoreExample 16 { 17 public class Startup 18 { 19 public Startup(IConfiguration configuration) 20 { 21 Configuration = configuration; 22 } 23 24 public IConfiguration Configuration { get; } 25 26 // This method gets called by the runtime. Use this method to add services to the container. 27 public void ConfigureServices(IServiceCollection services) 28 { 29 services.AddMvc().SetCompatibilityVersion(CompatibilityVersion.Version_2_1); 30 //添加SwaggerGen,配置api说明xml文档 31 services.AddSwaggerGen(p => 32 { 33 p.SwaggerDoc("v1", 34 new Info { Title = "NetCoreExampleAPI", Version = "v1" } 35 ); 36 string xmlPath = Path.Combine(AppContext.BaseDirectory, "NetCoreExample.xml"); //程序说明xml文档路径 37 p.IncludeXmlComments(xmlPath); 38 }); 39 } 40 41 // This method gets called by the runtime. Use this method to configure the HTTP request pipeline. 42 public void Configure(IApplicationBuilder app, IHostingEnvironment env) 43 { 44 if (env.IsDevelopment()) 45 { 46 app.UseDeveloperExceptionPage(); 47 } 48 app.UseMvc(); 49 50 51 //注册swagger插件 52 app.UseSwagger(); 53 app.UseSwaggerUI(p => 54 { 55 p.SwaggerEndpoint("/swagger/v1/swagger.json", "NetCoreExampleAPI V1");//注意v1是与AddSwaggerGen中指定的名称一致 56 }); 57 } 58 } 59 }
最后运行后访问http://localhost:5000/swagger/index.html
附:当然也可以配置多个api说明文档,不一定是程序本身的api说明。需确认xml文档正确有效,即可配置。以上是针对项目本身进行简单配置。如果需要其他的配置,请参照swagger官网
以上是关于DotnetCore之旅---swagger的简单使用的主要内容,如果未能解决你的问题,请参考以下文章
DotnetCore之旅(4-1)---使用EF操作Mssql数据库
在 dotnet core 上的 swagger (openAPI) UI 中集成运行状况检查端点