zoukankan      html  css  js  c++  java
  • Abp中SwaggerUI的接口说明文档配置

    项目中集成了swashbuckle,那么通过访问http://ip:port/swagger/ui/index,可以看到提供的接口列表。接口列表默认是没有提供接口说明信息的,但是swagger内部是集成了一个方法,可以通过读取xml文档添加接口说明。
     
    下面是操作步骤:
    1. 设置项目属性 > 生成,勾选XML文档文件。这样在制定文件目录下就可以生成代码的注释xml文件了。
     
    2. 提供方法读取这个xml文档。
    private static List<string> GetXmlCommentsPath()
    {
    List<string> docs = new List<string>();
    var modules = AbpModule.FindDependedModuleTypesRecursivelyIncludingGivenModule(typeof(AbpZeroTemplateWebApiModule));
    var baseDirectory = AppDomain.CurrentDomain.BaseDirectory;
     
    foreach (var module in modules)
    {
    var commentsFileName = module.Assembly.GetName().Name + ".XML";
    var commentsFile = Path.Combine(baseDirectory, "bin", commentsFileName);
    docs.Add(commentsFile);
    }
     
    return docs;
    //return String.Format(@"{0}inSwaggerUi.XML", System.AppDomain.CurrentDomain.BaseDirectory);
    }
    View Code
     
    3. 添加一个SwaggerDocHelper.cs。
    public class SwaggerDocHelper
    {
    public static void ConfigXmlCommentsPath(SwaggerDocsConfig config, List<string> docs)
    {
    foreach (var doc in docs)
    {
    if (FileUtils.IsFileExists(doc))
    {
    config.IncludeXmlComments(doc);
    }
    }
    config.ResolveConflictingActions(apiDescriptions => apiDescriptions.First());
     
    }
    }
    View Code
     
    4. 配置swagger读取文档。
     
    ok,到这里就配置成功了。检验下效果:
     
  • 相关阅读:
    跨公司销售利润中心替代
    [WCF学习笔记] 我的WCF之旅(1):创建一个简单的WCF程序
    linux操作常用命令
    java lambda表达式
    关于lock和synchronized的选择
    ssh免密登陆(简单快捷)
    su和sudo的区别
    Linux常用查找命令
    vmware完整克隆(linux)
    springboot2.0拦截器和webconfigure配置
  • 原文地址:https://www.cnblogs.com/sessionliang/p/6688213.html
Copyright © 2011-2022 走看看