• swagger实战踩坑1


    1.swagger error 有详细的错误信息

    • 自己根据详细信息找问题

    2.swagger error 无详细的错误信息

    • Controller是否重名=》重名,指定不同的   [Route("*****")]
    • Controller必须制定   [HttpPost]  或者   [HttpGet]

    3.swagger无注释

    • 引用项目,依次执行如下操作
      • 项目=》属性=》生成:输出:XML文档文件,指定至固定目录
    • webapi项目,添加链接文件(上一步的xml文件)
    • 链接文件,依次执行如下操作
      • 属性=》生成=》始终复制
    • Startup.cs中的 ConfigureServices(IServiceCollection services)中,添加如下代码:
                services.AddSwaggerGen(c =>
                {
                    c.SwaggerDoc("v1", new Info { Title = "Platform.Service.Enterprise.WebApi API", Version = "v1.0.0.0" });
                    c.DescribeAllEnumsAsStrings();
                    var basePath = PlatformServices.Default.Application.ApplicationBasePath;
                    var docPath = Path.Combine(basePath, "Docs");
                    var docs = XMLUtil.CreateXPathDocumentsFromDirectory(docPath);
                    docs.ForEach(xp => c.IncludeXmlComments(() => { return xp; }));
                });
    
    • Startup.cs中的 Configure(IApplicationBuilder app, IHostingEnvironment env)中,添加如下代码:
               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", "Platform Enterprise WebApi API");
                });
    • 重新生成解决方案
  • 相关阅读:
    2019年8月下旬
    2019年8月上旬
    2019年7月 vue专题
    2019年7月上
    mysql安装 demo [linux centos7] [5.7.26]
    记一个日志冲突——管中窥豹[java混乱的日志体系]
    Mybatis-Generator demo
    dubbo doc入门文档
    springBoot+mysql+mybatis demo [基本配置] [遇到的问题]
    nginx安装demo
  • 原文地址:https://www.cnblogs.com/panpanwelcome/p/9107553.html
Copyright © 2020-2023  润新知