欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

.Net Core WebApi生成Swagger接口文档

程序员文章站 2022-03-28 19:57:09
1. Swagger是什么? Swagger 是一个规范和完整的框架,用于生成、描述、调用和可视化 RESTful 风格的 Web 服务。总体目标是使客户端和文件系统作为服务器以同样的速度来更新。文件的方法,参数和模型紧密集成到服务器端的代码,允许API来始终保持同步。Swagger 让部署管理和使 ......

1. Swagger是什么?

    Swagger 是一个规范和完整的框架,用于生成、描述、调用和可视化 RESTful 风格的 Web 服务。总体目标是使客户端和文件系统作为服务器以同样的速度来更新。文件的方法,参数和模型紧密集成到服务器端的代码,允许API来始终保持同步。Swagger 让部署管理和使用功能强大的API从未如此简单。

 

2.Swagger可以干什么?

a.接口,服务可视化,非常清晰,好用

b.做接口测试,方便测试人员使用

第一步:创建WebApi工程

.Net Core WebApi生成Swagger接口文档

第二步:引入swagger的包

.Net Core WebApi生成Swagger接口文档

第三步:打开解决方案属性-->生成,勾选XML文档文件,保存

.Net Core WebApi生成Swagger接口文档

第四步:在Startup.cs的ConfigureServices中添加配置

   public void ConfigureServices(IServiceCollection services)
        {
            //配置跨域处理
            services.AddCors(options =>
            {
                options.AddPolicy("any", builder =>
                {
                    builder.AllowAnyOrigin() //允许任何来源的主机访问
                    .AllowAnyMethod()
                    .AllowAnyHeader()
                    .AllowCredentials();//指定处理cookie
                });
            });
            //配置Swagger
            services.AddSwaggerGen(c =>
            {
                c.SwaggerDoc("v1", new Info
                {
                    Version = "v1",
                    Title = "接口文档",
                    Description = "RESTful API for TwBusManagement"
                });
                var basePath = PlatformServices.Default.Application.ApplicationBasePath;
                var xmlPath = Path.Combine(basePath, "TextApi.xml");//和上面图片中xml地址相同
                c.IncludeXmlComments(xmlPath);
                //
            });

            services.AddMvc();
        }

第五步.在Configure中添加配置

 public void Configure(IApplicationBuilder app, IHostingEnvironment env)
        {
            if (env.IsDevelopment())
            {
                app.UseDeveloperExceptionPage();
            }
            app.UseStaticFiles(); //静态文件服务
            app.UseSwagger();
            app.UseSwaggerUI(c =>
            {
                c.SwaggerEndpoint("/swagger/v1/swagger.json", "TwBusManagement API V1");
                //c.ShowExtensions();
            });
            app.UseMvc();
        }

第六步.在Properties下的launchSettings.json的文件中修改初始页面

.Net Core WebApi生成Swagger接口文档

然后运行就可以了

.Net Core WebApi生成Swagger接口文档