1. 程式人生 > >Magicodes.SwaggerUI 已支援.NET Core 3.1

Magicodes.SwaggerUI 已支援.NET Core 3.1

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": "[email protected]"
        },
        "GroupUrlPrefix": "api/app1/"
      },
      {
        "IsEnabled": "true",
        "Title": "APP2 API文件",
        "Version": "v2",
        "GroupName": "App2",
        "Description": "",
        "Contact": {
          "Name": "心萊科技Team2",
          "Email": "[email protected]"
        },
        "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包

名稱說明NugetGitHUb
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

聯絡我們

其他開源庫

  • https://github.com/xin-lai
  • https://gitee.com/magicodes