/// <summary>
     /// Swagger 增加 Token 选项和控制器描述
     /// </summary>
     public class CustomOperationFilter : IOperationFilter
     {

         /// <summary>
         /// 应用
         /// </summary>
         /// <param name="operation">操作对象</param>
         /// <param name="schemaRegistry">架构注册表对象</param>
         /// <param name="apiDescription">API描述对象</param>
         public void Apply(Operation operation, SchemaRegistry schemaRegistry, ApiDescription apiDescription)
         {
             if (operation.parameters == null)
             {
                 operation.parameters = new List<Parameter>();
             }
             if (!apiDescription.ActionDescriptor.GetCustomAttributes<AllowAnonymousAttribute>().Any())
             {
                 operation.parameters.Add(new Parameter { name = "Token", @in = "header", description = "令牌", required = false, type = "string" });
             }
             ],
                 () =>
                 {
                     return GetControllerDescriptor(string.Format("T:{0}", apiDescription.ActionDescriptor.ControllerDescriptor.ControllerType.FullName));
                 }, );
             operation.tags[] = summary;
         }

         /// <summary>
         /// 获取控制器描述信息
         /// </summary>
         /// <param name="nodeName">节点名称</param>
         /// <returns></returns>
         private string GetControllerDescriptor(string nodeName)
         {
             XmlDocument xmlDocument = new XmlDocument();
             xmlDocument.Load(Constant.apiCommentDocuPath);
             XmlNode node = xmlDocument.SelectSingleNode($"doc/members/member[@name='{nodeName}']");
             return node?.InnerText.Trim();
         }
     }

查看核心代码

自定义泛型缓存 转至  https://www.cnblogs.com/JingYeChong/p/10868473.html

需要获取完整Web API Demo      联系QQ 850856667

个人追求:用最少且美观的代码,完成更多的秀。。。

Swagger UI改造 增加 Token验证、显示控制器注释、自定义泛型缓存应用、的更多相关文章

  1. Swagger ui测试中的验证 apikey

    Swagger ui测试中的验证 apikey 我们使用swagger 用来呈现webapi的接口,除了可以看到接口的说明和参数说明,还可以进行测试.但是我们的接口通常是有验证的,不是随便就能调用的, ...

  2. swagger ui 值类型形参加文字注释

    例: @ApiImplicitParams({ @ApiImplicitParam(paramType = "query", name = "indexCondition ...

  3. [C#]在 DotNetCore 下的 Swagger UI 自定义操作

    1.Swagger UI 是什么? Swagger UI 是一个在线的 API 文档生成与测试工具,你可以将其集成在你的 API 项目当中. 支持 API 自动同步生成文档 高度自定义,可以自己扩展功 ...

  4. 在 .NET Core 下的 Swagger UI 自定义操作

    1.Swagger UI 是什么? Swagger UI 是一个在线的 API 文档生成与测试工具,你可以将其集成在你的 API 项目当中. 支持 API 自动同步生成文档 高度自定义,可以自己扩展功 ...

  5. Asp.Net Core 3.1 学习3、Web Api 中基于JWT的token验证及Swagger使用

    1.初始JWT 1.1.JWT原理 JWT(JSON Web Token)是目前最流行的跨域身份验证解决方案,他的优势就在于服务器不用存token便于分布式开发,给APP提供数据用于前后端分离的项目. ...

  6. ASP.NET Core 在 Swagger UI 中显示自定义的 Header Token

    Swagger 是个好东西,对于前后端分离的网站来说,不仅是提高前后端开发人员沟通效率的利器,也大大方便了后端人员测试 API.有时候,API 中可能需要在 Header 中设置认证参数,比如 aut ...

  7. SpringMVC+JWT+Swagger UI+RestFul

    前言: 其实很早就想写这篇文章了,因为我觉得这会对很多新手有指引作用,当初自己也是瞎子过河的摸索着过来的.目前后台开发比较流行的MVC框架中使用Spring MVC还是比较多的,当然还有Spring ...

  8. ABP 用swagger UI测试API报401无权限访问问题

    问题描述: 当我们用swagger UI对Web API 进行测试时报401错误 我们点开GET /api/services/app/Role/GetAll,输入参数 点击Try it out!按钮, ...

  9. ASP.NET Zero--基于令牌的认证&SWAGGER UI

    基于令牌的认证 任何应用程序都可以将应用程序中的任何功能认证和使用为API.例如,您可以创建一个移动应用程序消耗相同的API.在本节中,我们将演示来自Postman的API (Google Chrom ...

随机推荐

  1. post发送数据 mypost input 改变事件

    //name=或者 "&name=" + "123" + "&data=" + "slice" (可以获 ...

  2. BeginEditorCommand()

    BeginEditorCommand();开始把焦点给CAD CompleteEditorCommand();焦点给窗体

  3. linux下如何限制普通用户更改密码

    问题描述: 为了方便linux管理员对所有用户的进行管理,如何限制普通用户更改密码? 解决方法: 禁止普通用户更改密码: /usr/bin/passwd 若要允许普通用户更改密码: /usr/bin/ ...

  4. FTP服务器访问主动模式、被动模式

    在公司里面,经常需要访问外网FTP取资料等情况.但是有时用windows界面访问经常遇到各种问题. 下面介绍两种客户端是如何访问ftp服务器. 首先我们需要说明:防火墙,是阻拦外界与内部的通讯的一道关 ...

  5. WinForm窗体中窗口控件的生成

    1:button控件的生成方式 Button button = new Button(); button.Size = new Size(80, 80); button.Location = new ...

  6. 洛谷——P1122 最大子树和

    P1122 最大子树和 树形DP,$f[u]$表示以u为根的子树的最大美丽指数 $f[u]+=max(0,f[v])$ 树形DP的基本结构,先搜再DP,这题感觉有点儿贪心的性质,选就要选美丽值> ...

  7. Vector 二维数组 实现

    1.C++实现动态二维数组 int **p; p = ]; //注意,int*[10]表示一个有10个元素的指针数组 ; i < ; ++i) { p[i] = ]; } 2.利用指针数组实现二 ...

  8. 使用 lua 编写 wireshark 协议解析插件

    一.平台 操作系统:windows 7 wireshark:1.10.3 lua:5.1 二.准备 lua 语言基本语法,特别是关于表操作和循环 wireshark 文档,包括用户使用文档和开发者文档 ...

  9. windows桌面远程工具连接Ubuntu

    1.Ubuntu安装:sudo apt-get install xrdp    sudo apt-get install vnc4server sudo apt-get install xubuntu ...

  10. HTML的基本操作学习----常用标签,特殊符号,列表,表格,表单

    什么是HTML 常用标签 标题标签 段落标签 粗体标签+斜体 超链接标签 图片标签 列表标签 无序标签 有序标签 自定义列表 div标签 特殊符号 表格 表单 HTML 什么是 HTML?   HTM ...