Magicodes.SwaggerUI

通过配置文件简单配置即可快速完成SwaggerUI的配置,包括:

  • SwaggerUI的文档信息
  • API分组
  • API隐藏
  • API JSON生成(枚举、API架构Id)
  • 验证
  • 自定义页面

支持.NET Core 2.2和3.1。版本日志和使用教程见下文。

注意:AddCustomSwaggerGen和UseCustomSwaggerUI已分别替换为“AddMagicodesSwaggerGen”、“UseMagicodesSwaggerUI”。

更新日志

2020.03.07

  • 【Nuget】Magicodes.SwaggerUI 3.0.2
  • 【升级】支持.NET Core 3.1
  • 【重构】支持自定义逻辑编写:
    • AddMagicodesSwaggerGen添加Action<SwaggerGenOptions, SwaggerConfigInfo>参数,可以实现自定义逻辑
    • UseMagicodesSwaggerUI添加Action<SwaggerUIOptions, SwaggerConfigInfo>参数,可以实现自定义逻辑

2019.10.21

  • 【Nuget】Magicodes.SwaggerUI 2.0.4
  • 【升级】单个文档不分组,显示所有API
  • 【梳理】梳理目录结构
  • 【修复】修复本地开发环境运行时不加载文档注释的问题
  • 【修改】自动移除GroupUrlPrefix的前后空格以及“/”前缀
  • 【升级】在全局隐藏API的基础上,支持分组API隐藏
  • 【升级】API隐藏支持HTTP方法配置,默认“*”

2019.10.19

  • 【升级】支持API分组,支持非侵入式配置,无需修改代码,仅通过配置即可完成API分组(见下面示例)
  • 【重构】重构整体逻辑

Demo

配置Demo

  "SwaggerDoc": {
"IsEnabled": "true",
//将枚举值以字符串显示
"DescribeAllEnumsAsStrings": false,
"SwaggerDocInfos": [
{
"IsEnabled": "true",
"Title": "APP1 API文档",
"Version": "v1",
"GroupName": "App1",
"Description": "",
"Contact": {
"Name": "心莱科技Team1",
"Email": "xinlai@xin-lai.com"
},
"GroupUrlPrefix": "api/app1/"
},
{
"IsEnabled": "true",
"Title": "APP2 API文档",
"Version": "v2",
"GroupName": "App2",
"Description": "",
"Contact": {
"Name": "心莱科技Team2",
"Email": "xinlai@xin-lai.com"
},
"GroupUrlPrefix": "api/app2/",
"HiddenApi": {
"IsEnabled": "true",
"Urls": [
{
"Url": "app2/Values/{id}",
"HttpMethod": "Delete"
}
]
}
}
],
"HiddenApi": {
"IsEnabled": "true",
"Urls": [
{ "Url": "app1/Values/{id}" }
]
},
"UseFullNameForSchemaId": "false"
}

注入代码:

//添加自定义API文档生成(支持文档配置)
public IServiceProvider ConfigureServices(IServiceCollection services)
{
services.AddMagicodesSwaggerGen(_appConfiguration);
} public void Configure(IApplicationBuilder app, ILoggerFactory loggerFactory)
{
//启用自定义API文档(支持文档配置)
app.UseMagicodesSwaggerUI(_appConfiguration);
}

特点

  • 通过配置文件简单配置即可完成SwaggerUI的API格式JSON生成和集成

  • 支持API分组和隐藏

  • 支持自定义页面和验证

Nuget包

名称 Nuget
Magicodes.SwaggerUI

Magicodes Nuget包推荐

相关Nuget包

名称 说明 Nuget GitHUb
Magicodes.IE.Excel Excel导入导出 dotnetcore/Magicodes.IE
Magicodes.IE.Core 导入导出核心库 dotnetcore/Magicodes.IE
Magicodes.IE.HTML HTML导入导出 dotnetcore/Magicodes.IE
Magicodes.IE.Pdf Pdf导出 dotnetcore/Magicodes.IE
Magicodes.IE.Word Word导出 dotnetcore/Magicodes.IE
Magicodes.IE.Csv Csv导入导出 dotnetcore/Magicodes.IE
Magicodes.WeChat.MiniProgram 小程序SDK Magicodes.WxMiniProgram.Sdk
Magicodes.Sms.Aliyun 阿里云短信 xin-lai/Magicodes.Sms
Magicodes.Sms.Core 短信核心库 xin-lai/Magicodes.Sms
Magicodes.Sms.Aliyun.Abp 阿里云短信Abp模块 xin-lai/Magicodes.Sms
Magicodes.Storage.Core 通用存储核心库 xin-lai/Magicodes.Storage
Magicodes.Storage.AliyunOss.Core 阿里云OSS存储 xin-lai/Magicodes.Storage
Magicodes.Storage.Local.Core 本地存储 xin-lai/Magicodes.Storage
Magicodes.Storage.Tencent.Core 腾讯云存储 xin-lai/Magicodes.Storage
Magicodes.Storage.Abp.Core 通用存储ABP模块集成 xin-lai/Magicodes.Storage
Magicodes.WeChat.SDK.Core 微信SDK xin-lai/Magicodes.WeChat.SDK
Magicodes.SwaggerUI SwaggerUI API快速配置和分组 xin-lai/Magicodes.SwaggerUI
Magicodes.Pay.Alipay 支付宝支付库 xin-lai/Magicodes.Pay
Magicodes.Pay.Notify 支付通用回调库 xin-lai/Magicodes.Pay
Magicodes.Pay.Wxpay 微信支付库 xin-lai/Magicodes.Pay
Magicodes.Pay.Alipay.Global 国际支付宝支付库 xin-lai/Magicodes.Pay
Magicodes.Pay.Allinpay 通联支付库 xin-lai/Magicodes.Pay
Magicodes.Pay.Abp ABP 支付通用封装库 xin-lai/Magicodes.Pay
Magicodes.Pay.Abp.Allinpay ABP 通联支付模块 xin-lai/Magicodes.Pay
Magicodes.Pay.Abp.Wxpay ABP 微信支付模块 xin-lai/Magicodes.Pay
Magicodes.Pay.Alipay.Global ABP 国际支付宝模块 xin-lai/Magicodes.Pay
Magicodes.Pay.Alipay ABP 支付宝模块 xin-lai/Magicodes.Pay
Magicodes.Abp.Castle.NLog ABP Nlog支持模块 xin-lai/Abp.Castle.NLog
Magicodes.WxMiniProgram.Sdk 微信小程序SDK xin-lai/Magicodes.WxMiniProgram.Sdk
Magicodes.WxMiniProgram.Sdk.Abp 微信小程序SDK Abp模块 xin-lai/Magicodes.WxMiniProgram.Sdk
Magicodes.Dingtalk.SDK 钉钉SDK xin-lai/Magicodes.Dingtalk.SDK
Magicodes.DynamicSqlApi.Core 根据SQL自动解析生成动态API Magicodes.DynamicSqlApi
Magicodes.DynamicSqlApi.All 根据SQL自动解析生成动态API Magicodes.DynamicSqlApi
Magicodes.DynamicSqlApi.CsScript 根据SQL自动解析生成动态API Magicodes.DynamicSqlApi
Magicodes.DynamicSqlApi.Dapper 根据SQL自动解析生成动态API Magicodes.DynamicSqlApi
Magicodes.DynamicSqlApi.SqlServer 根据SQL自动解析生成动态API Magicodes.DynamicSqlApi

联系我们

其他开源库

Magicodes.SwaggerUI 已支持.NET Core 3.1的更多相关文章

  1. Magicodes.Pay已支持Volo Abp

    Magicodes.Pay已支持Volo Abp 简介 Magicodes.Pay希望打造一个统一支付库,相关库均使用.NET标准库编写,支持.NET Framework以及.NET Core.目前已 ...

  2. 开源:Taurus.MVC 框架 (已支持.NET Core)

    为什么要创造Taurus.MVC: 记得被上一家公司忽悠去负责公司电商平台的时候,情况是这样的: 项目原版是外包给第三方的,使用:WebForm+NHibernate,代码不堪入目,Bug无限,经常点 ...

  3. Magicodes.IE已支持导出Word、Pdf和Html

    关于Magicodes.IE 导入导出通用库,通过导入导出DTO模型来控制导入和导出,支持Excel.Word.Pdf和Html. GitHub地址:https://github.com/xin-la ...

  4. 开源:ASP.NET Aries 开发框架(已支持.NET Core)

    前言: 随着岁月的推进,不知不觉已在.NET这领域上战斗了十年了. 青春还没来得急好好感受,却已是步入健忘之秋的老人一枚了. 趁着还有点记忆,得赶紧把硬盘里那私藏的80G除外的东西,和大伙分享分享. ...

  5. ASP.NET Aries 开发框架(已支持.NET Core)

    背景: 当年,在卖弄与开源QBlog时,也曾想过把QBlog的开发理念整理整理,独立一个框架来开源. 不过,人越长大就越憔悴,激情终敌不过疲惫的惰性,最终无痕而终,连3.0的版本也没开源出来. 关于框 ...

  6. MySQL官方.NET Core驱动已出,支持EF Core

    千呼万唤始出来MySQL官方.NET Core驱动已出,支持EF Core. 昨天MySQL官方已经发布了.NET Core 驱动,目前还是预览版,不过功能已经可用. NuGet 地址:https:/ ...

  7. NET Core驱动已出,支持EF Core

    NET Core驱动已出,支持EF Core 千呼万唤始出来MySQL官方.NET Core驱动已出,支持EF Core. 昨天MySQL官方已经发布了.NET Core 驱动,目前还是预览版,不过功 ...

  8. [开源].NET高性能框架Chloe.ORM-完美支持.NET Core

    扯淡 这是一款轻量.高效的.NET C#数据库访问框架(ORM).查询接口借鉴 Linq(但不支持 Linq).借助 lambda 表达式,可以完全用面向对象的方式就能轻松执行多表连接查询.分组查询. ...

  9. CYQ.Data 正式支持 DotNET Core 版本发布

    闲话几句: 自从上周开始,IOS人员逝去,就开始接手IOS的代码了. 并开始整理IOS的代码(包括当时一开始设计的开发框架). 在未来不远的日子里,设想是有一个系列详细的介绍I恋App和IT连App及 ...

随机推荐

  1. 第 38 章 OCR - Optical Character Recognition

    38.1. Tesseract 查找Tesseract安装包 $ apt-cache search Tesseract ocrodjvu - tool to perform OCR on DjVu d ...

  2. Java 线程池(ThreadPoolExecutor)原理分析与实际运用

    在我们的开发中"池"的概念并不罕见,有数据库连接池.线程池.对象池.常量池等等.下面我们主要针对线程池来一步一步揭开线程池的面纱. 有关java线程技术文章还可以推荐阅读:< ...

  3. FMT/FWT学习笔记

    目录 FMT/FWT学习笔记 FMT 快速莫比乌斯变换 OR卷积 AND卷积 快速沃尔什变换(FWT/XOR卷积) FMT/FWT学习笔记 FMT/FWT是算法竞赛中求or/and/xor卷积的算法, ...

  4. jacoco 生成单测覆盖率报告

    一.jacoco 简介 jacoco 是一个开源的覆盖率工具,它针对的开发语言是 java.其使用方法很灵活,可以嵌入到 ant.maven 中:可以作为 Eclipse 插件:可以作为 javaAg ...

  5. 【漫画】JAVA并发编程三大Bug源头(可见性、原子性、有序性)

    原创声明:本文转载自公众号[胖滚猪学编程]​ 某日,胖滚猪写的代码导致了一个生产bug,奋战到凌晨三点依旧没有解决问题.胖滚熊一看,只用了一个volatile就解决了.并告知胖滚猪,这是并发编程导致的 ...

  6. Spring官网阅读(十)Spring中Bean的生命周期(下)

    文章目录 生命周期概念补充 实例化 createBean流程分析 doCreateBean流程分析 第一步:factoryBeanInstanceCache什么时候不为空? 第二步:创建对象(crea ...

  7. react-redux的理解

    react-redux是辅助redux的,我们正常使用redux是很麻烦的,需要在每个组件中去监听数据变化,执行数据更新等 但是通过react-redux,我们可以简化组件使用公共数据的操作, rea ...

  8. 记一次sqoop安装后测试的问题

    运行命令: sqoop import --connect "jdbc:mysql://x.x.x.x:3306/intelligent_qa_bms?useUnicode=true& ...

  9. Nodejs异步编程

    异步函数:异步函数是异步编程语法的终极解决方案,它可以把异步代码写成同步的形式,让代码不再有回调函数嵌套,使代码变得更清晰. const fn = async () =>{}; async  f ...

  10. FOC中的Clarke变换和Park变换详解(动图+推导+仿真+附件代码)

    文章目录 1 前言 2 自然坐标系ABC 3 αβ\alpha\betaαβ 坐标系 3.1 Clarke变换 3.2 Clarke反变换 4 dqdqdq 坐标系 4.1 Park变换 正转 反转 ...