首页 > Web开发 > 详细

net core 3.1 swagger

时间:2020-06-29 17:08:48      阅读:91      评论:0      收藏:0      [点我收藏+]

1、引入最新版的swaager

Install-Package Swashbuckle.AspNetCore -Version 5.0.0-rc4

2、在startup类中的ConfigureServices 方法中的服务集合中添加如下代码

// Register the Swagger generator, defining 1 or more Swagger documents
    services.AddSwaggerGen(c =>
    {
        c.SwaggerDoc("v1", new OpenApiInfo { Title = "My API", Version = "v1" });
    });

3、 在startup类中的Configure 方法中启用中间件为生成的 JSON 文档和 Swagger UI 提供服务

技术分享图片
 // Enable middleware to serve generated Swagger as a JSON endpoint.
    app.UseSwagger();

    // Enable middleware to serve swagger-ui (HTML, JS, CSS, etc.),
    // specifying the Swagger JSON endpoint.
    app.UseSwaggerUI(c =>
    {
        c.SwaggerEndpoint("/swagger/v1/swagger.json", "My API V1");
    });
技术分享图片

4、运行项目并在浏览器访问swaager/index.html,结果如下:

技术分享图片

 

 

 5、swagger显示xml注释

5.1给接口加一个注释

技术分享图片
        /// <summary>
        /// 获取天气预报(get)
        /// </summary>
        /// <returns></returns>
        [HttpGet]
        public IEnumerable<WeatherForecast> Get()
技术分享图片

5.2右键点击项目---->属性------>生成------>勾选xml文档文件

技术分享图片

 

 5.3在startup类中的ConfigureServices 方法中的服务集合中添加如下代码

技术分享图片
 //注册swagger 
            services.AddSwaggerGen(c =>
            {
                c.SwaggerDoc("v1", new OpenApiInfo { Title = "My API", Version = "v1" });
                var xmlFile = $"{Assembly.GetExecutingAssembly().GetName().Name}.xml";
                var xmlPath = Path.Combine(AppContext.BaseDirectory, xmlFile);
                c.IncludeXmlComments(xmlPath,true); //添加控制器层注释(true表示显示控制器注释)
           
            });
技术分享图片

5.4运行项目并访问swaggerUI

技术分享图片

 

6、生成swaggerUI 规范,直接访问如下链接,会自动生成一个swagger.json的json文件。

swagger/v1/swagger.json

net core 3.1 swagger

原文:https://www.cnblogs.com/LiuFengH/p/13208665.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!