NetCore 配置Swagger的详细代码
1.添加Nuget
install-package Swashbuckle.AspNetCore -project XXX -version 6.4.0
2.添加静态类扩展方法
2.1.生成项目xml:选中项目 / 右键 / 属性 / 生成 / 输出 / 选中xml文档文件
2.2.system_v1:必须唯一不重复,且【options.SwaggerDoc("system_v1"】必须与【options.SwaggerEndpoint("/swagger/system_v1/】一致,不然会异常【Failed to load API definition; Fetch error: response status is 404 /swagger/system_v1/swagger.json】
/// <summary> /// Swagger 静态类 /// </summary> public static class SwaggerExtend { /// <summary> /// 添加服务: swagger /// </summary> /// <param name="services"></param> /// <returns></returns> public static void AddCustSwagger(this IServiceCollection services) { var version = "V1.0"; var apiName = "XXX系统"; services.AddSwaggerGen(options => { options.ResolveConflictingActions(apiDescriptions => apiDescriptions.First()); options.SwaggerDoc("system_v1", new OpenApiInfo { Version = version, Title = $"{apiName} API", Description = $"{apiName} {version} 接口服务" }); // 获取应用程序所在目录 var basePath = Path.GetDirectoryName(typeof(SwaggerExtend).Assembly.Location); var xmlPath = Path.Combine(basePath, "ProjectName.xml"); // swagger界面默认只显示 方法&字段 注释,不显示 控制器注释 // 第二个参数为true, 则是controller的注释 //options.IncludeXmlComments(xmlPath); options.IncludeXmlComments(xmlPath, true); }); } /// <summary> /// 添加中间件: swagger /// </summary> /// <param name="app"></param> public static void UseCustSwagger(this IApplicationBuilder app) { app.UseSwagger(); app.UseSwaggerUI(options => { options.SwaggerEndpoint("/swagger/system_v1/swagger.json", "系统API"); // 默认路径为:/swagger/index.html // 路由前缀 - 设置为空,可直接跳转到swagger页面:/index.html // api测试可设置为空,部署时容易与前端路由冲突 options.RoutePrefix = string.Empty; }); } }
3.StartUp注册服务,添加中间件
public void ConfigureServices(IServiceCollection services) { services.AddCustSwagger(); } public void Configure(IApplicationBuilder app, IWebHostEnvironment env) { app.UseCustSwagger(); }
到此这篇关于NetCore 配置Swagger的的文章就介绍到这了,更多相关NetCore 配置Swagger内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!
相关文章
在GridView中LinkButton的属性的应用(如何不用选中就删除这一行)
GridView中LinkButton的属性的应用,实现不用选中就删除这一行2009-04-04.Net core Blazor+自定义日志提供器实现实时日志查看器的原理解析
我们经常远程连接服务器去查看日志,比较麻烦,如果直接访问项目的某个页面就能实时查看日志就比较奈斯了,结合blazor实现了基本效果,这篇文章主要介绍了.Net core Blazor+自定义日志提供器实现实时日志查看器,需要的朋友可以参考下2022-10-10
最新评论