.net8系列-04图文并茂手把手教你配置Swagger支持token以及实现Swagger扩展,Swagger代码单独抽离

这篇具有很好参考价值的文章主要介绍了.net8系列-04图文并茂手把手教你配置Swagger支持token以及实现Swagger扩展,Swagger代码单独抽离。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

前情提要

接上篇文章,我们当前已完成如下内容:

  • 创建应用成功
  • 创建接口成功
  • 配置Swagger实现接口注释和版本控制
    本文章主要内容为:
  • 配置Swagger支持token传值测试接口

快速上手-代码配置

添加如下代码

文件目录:\xiaojinWebApplication\xiaojinWebApplication\Program.cs

 // Swagger token传值功能 --- start
 {
     option.AddSecurityDefinition("Bearer", new Microsoft.OpenApi.Models.OpenApiSecurityScheme()
     {
         Description = "请输入正确的Token格式: Bearer xxx",
         Name = "Authorization",
         In = Microsoft.OpenApi.Models.ParameterLocation.Header,
         Type = Microsoft.OpenApi.Models.SecuritySchemeType.ApiKey,
         BearerFormat = "JWT",
         Scheme = "Bearer"
     });
     // 安全要求
     option.AddSecurityRequirement(new Microsoft.OpenApi.Models.OpenApiSecurityRequirement
     {
         {
             new OpenApiSecurityScheme
             {
                 Reference = new OpenApiReference()
                 {
                     Type = ReferenceType.SecurityScheme,
                     Id = "Bearer"
                 }
             },
             new string[]{}
         
         }
     });
 }
 // Swagger token传值功能 --- end

.net8系列-04图文并茂手把手教你配置Swagger支持token以及实现Swagger扩展,Swagger代码单独抽离,C#,.net,c#,asp.net,后端,测试工具

运行测试Token传值功能

打开接口测试页面

.net8系列-04图文并茂手把手教你配置Swagger支持token以及实现Swagger扩展,Swagger代码单独抽离,C#,.net,c#,asp.net,后端,测试工具

配置Token

.net8系列-04图文并茂手把手教你配置Swagger支持token以及实现Swagger扩展,Swagger代码单独抽离,C#,.net,c#,asp.net,后端,测试工具
.net8系列-04图文并茂手把手教你配置Swagger支持token以及实现Swagger扩展,Swagger代码单独抽离,C#,.net,c#,asp.net,后端,测试工具

观察页面

我们发现Swagger页面上面每个接口后都多了一把小锁,如果接口后面的小锁没有锁上的话,请检查代码里的option.AddSecurityRequirement配置
.net8系列-04图文并茂手把手教你配置Swagger支持token以及实现Swagger扩展,Swagger代码单独抽离,C#,.net,c#,asp.net,后端,测试工具
.net8系列-04图文并茂手把手教你配置Swagger支持token以及实现Swagger扩展,Swagger代码单独抽离,C#,.net,c#,asp.net,后端,测试工具

接口Token传值测试

调用接口测试,我们发现接口调用的时候已经带上Token了
.net8系列-04图文并茂手把手教你配置Swagger支持token以及实现Swagger扩展,Swagger代码单独抽离,C#,.net,c#,asp.net,后端,测试工具

Swagger扩展(代码逻辑抽离复用)

创建Swagger扩展文件夹

.net8系列-04图文并茂手把手教你配置Swagger支持token以及实现Swagger扩展,Swagger代码单独抽离,C#,.net,c#,asp.net,后端,测试工具
.net8系列-04图文并茂手把手教你配置Swagger支持token以及实现Swagger扩展,Swagger代码单独抽离,C#,.net,c#,asp.net,后端,测试工具

添加类

创建SwaggerExtention.cs
.net8系列-04图文并茂手把手教你配置Swagger支持token以及实现Swagger扩展,Swagger代码单独抽离,C#,.net,c#,asp.net,后端,测试工具
.net8系列-04图文并茂手把手教你配置Swagger支持token以及实现Swagger扩展,Swagger代码单独抽离,C#,.net,c#,asp.net,后端,测试工具
.net8系列-04图文并茂手把手教你配置Swagger支持token以及实现Swagger扩展,Swagger代码单独抽离,C#,.net,c#,asp.net,后端,测试工具

查看Swagger相关配置代码

经过分析,我们发现它的配置都是基于 builder.Services ,我们可以编写一个函数,参数为 builder.Services 的所属类型IServiceCollection
.net8系列-04图文并茂手把手教你配置Swagger支持token以及实现Swagger扩展,Swagger代码单独抽离,C#,.net,c#,asp.net,后端,测试工具

编写代码
namespace xiaojinWebApplication.WebCore.SwaggerExtention
{
    public class SwaggerExtention
    {
        public static void addSwaggerExtention(IServiceCollection Service)
        {

        }
    }
}
将之前逻辑复制到代码中

.net8系列-04图文并茂手把手教你配置Swagger支持token以及实现Swagger扩展,Swagger代码单独抽离,C#,.net,c#,asp.net,后端,测试工具
.net8系列-04图文并茂手把手教你配置Swagger支持token以及实现Swagger扩展,Swagger代码单独抽离,C#,.net,c#,asp.net,后端,测试工具

发现报错

找不到IServiceCollection类型,是因为我们的这个扩展没有安装依赖项,所以我们需要安装依赖
.net8系列-04图文并茂手把手教你配置Swagger支持token以及实现Swagger扩展,Swagger代码单独抽离,C#,.net,c#,asp.net,后端,测试工具

安装依赖项

目前内容较少,所以我们基于solution去安装依赖项
.net8系列-04图文并茂手把手教你配置Swagger支持token以及实现Swagger扩展,Swagger代码单独抽离,C#,.net,c#,asp.net,后端,测试工具
.net8系列-04图文并茂手把手教你配置Swagger支持token以及实现Swagger扩展,Swagger代码单独抽离,C#,.net,c#,asp.net,后端,测试工具
.net8系列-04图文并茂手把手教你配置Swagger支持token以及实现Swagger扩展,Swagger代码单独抽离,C#,.net,c#,asp.net,后端,测试工具
.net8系列-04图文并茂手把手教你配置Swagger支持token以及实现Swagger扩展,Swagger代码单独抽离,C#,.net,c#,asp.net,后端,测试工具

安装成功

.net8系列-04图文并茂手把手教你配置Swagger支持token以及实现Swagger扩展,Swagger代码单独抽离,C#,.net,c#,asp.net,后端,测试工具

修改代码,解决报错

using Microsoft.Extensions.DependencyInjection;// 需要补充
using Microsoft.OpenApi.Models;// 需要补充
using System;
using System.Collections.Generic;
using System.Linq;
using System.Reflection;// 需要补充

public static void addSwaggerExtention(Microsoft.Extensions.DependencyInjection.IServiceCollection Service) // 需要修改

.net8系列-04图文并茂手把手教你配置Swagger支持token以及实现Swagger扩展,Swagger代码单独抽离,C#,.net,c#,asp.net,后端,测试工具

去掉原有逻辑,使用封装函数执行逻辑
SwaggerExtention.addSwaggerExtention(builder.Services);

.net8系列-04图文并茂手把手教你配置Swagger支持token以及实现Swagger扩展,Swagger代码单独抽离,C#,.net,c#,asp.net,后端,测试工具

重启,运行成功

.net8系列-04图文并茂手把手教你配置Swagger支持token以及实现Swagger扩展,Swagger代码单独抽离,C#,.net,c#,asp.net,后端,测试工具
好啦,到这里,我们的Swagger部分代码逻辑已经成功抽离出来成为一个扩展了~

结语

  • 今天就写到这里啦~
  • 小伙伴们,( ̄ω ̄( ̄ω ̄〃 ( ̄ω ̄〃)ゝ我们明天再见啦~~
  • 大家要天天开心哦

欢迎大家指出文章需要改正之处~
学无止境,合作共赢

.net8系列-04图文并茂手把手教你配置Swagger支持token以及实现Swagger扩展,Swagger代码单独抽离,C#,.net,c#,asp.net,后端,测试工具文章来源地址https://www.toymoban.com/news/detail-860203.html

欢迎路过的小哥哥小姐姐们提出更好的意见哇~~

到了这里,关于.net8系列-04图文并茂手把手教你配置Swagger支持token以及实现Swagger扩展,Swagger代码单独抽离的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • Windows电脑安装Linux(Ubuntu 22.04)系统(图文并茂)

    Ubuntu 16.04、Ubuntu 18.04安装方法相同,制作U盘启动项的镜像文件下载你需要的版本即可! Ubuntu的中文官网网址:https://cn.ubuntu.com/,聪明的你一定能找到下载镜像文件的地方! https://releases.ubuntu.com/是Ubuntu 14.04 到 Ubuntu 23.10的镜像文件汇总地址! 制作U盘启动项的软件rufus的下载

    2024年03月12日
    浏览(59)
  • Activiti7(图文并茂)

    Activiti 是由 jBPM (BPM,Business Process Management 即业务流程管理) 的创建者 Tom Baeyens 离开 JBoss 之后建立的项目,构建在开发 jBPM 版本 1 到 4 时积累的多年经验的基础之上,旨在创建下一代的 BPM 解 决方案。 Activiti 作为一个开源的工作流引擎,它实现了BPMN 2.0规范,可以发布设计

    2024年02月06日
    浏览(60)
  • RabbitMQ入门篇【图文并茂,超级详细】

    接下来看看由辉辉所写的关于RabbitMQ的相关操作吧 目录 🥳🥳Welcome 的Huihui\\\'s Code World ! !🥳🥳 前言 1.什么是MQ 2.理解MQ 3.生活案例分析与理解 4.MQ的使用场景 (1)解耦 传统模式 中间件模式 (2)削峰 传统模式 中间件模式 (3)异步  传统模式 中间件模式 5.常见的MQ 一. Rab

    2024年01月20日
    浏览(53)
  • secureCRT安装和使用教程【图文并茂】

    简介 一般而言,嵌入式开发板使用串口来监控后台。可以使用串口线连接开发板和电脑,对于没有串口的笔记本电脑来说,一般还需要一根USB转串口线。 串口线 串口软件多种多样,比如secureCRT、Xshell、超级终端、miniCom、putty等,它们的功能大同小异,因此只需安装用的顺手

    2024年02月03日
    浏览(94)
  • 发送图文并茂的html格式的邮件

    本文介绍如何生成和发送包含图表和表格的邮件,涉及echarts图表转换为图片、图片内嵌到html邮件内容中、html邮件内容生成、邮件发送方法等 因为html格式的邮件不支持echarts,也不支持js执行,所以图表需要转换为图片内嵌在邮件内容中 因为平台首页相关统计都是使用echarts渲

    2024年02月11日
    浏览(42)
  • 归并排序Java版(图文并茂思路分析)

    工作原理是将一个大问题分解成小问题,再将小问题分解成更小的。(乍一看就觉得是像一个递归)就像下图这样。然后不断的将其一份为二,分解成更小的排序。 我们设一个函数叫MergeSort(arr,l,r)意思就是将arr数组下标为[ l ,r ]之间的数进行排序。 那么就开始不断的

    2024年02月06日
    浏览(44)
  • 什么是感知机——图文并茂,由浅入深

    生活中常常伴随着各种各样的逻辑判断,比如看到远方天空中飘来乌云,打开手机看到天气预报说1小时后40%的概率下雨,此时时候我们常常会做出等会下雨,出门带伞的判断。 上述思考过程可以抽象为一个”与“的”神经逻辑“。当”看到乌云“和”天气预报40%下雨“同时

    2023年04月20日
    浏览(41)
  • Java 线程池详解,图文并茂,还有谁不会?!

    来源:blog.csdn.net/mu_wind/article/details/113806680 我们知道,线程的创建和销毁都需要映射到操作系统,因此其代价是比较高昂的。出于避免频繁创建、销毁线程以及方便线程管理的需要,线程池应运而生。 降低资源消耗 :线程池通常会维护一些线程(数量为 corePoolSize),这些线

    2024年02月06日
    浏览(57)
  • Flutter 图文并茂:打造交互丰富的应用界面

    Flutter作为一种现代的UI工具包,为开发者提供了丰富的工具和小部件,轻松构建漂亮、响应迅速的应用界面。本篇博客将带你踏入Flutter的世界,学习如何巧妙运用图片、按钮、图标,以及行与列进行布局,打造令人惊艳的用户交互体验。 无论你是Flutter初学者还是有一定经验

    2024年02月03日
    浏览(42)
  • NodeMCU ESP8266开发流程详解(图文并茂)

    NodeMCU ESP8266基于Arduino IDE的开发相对来说还是比较容易上手的,我们基本需要以下几个东西; 一台安装好Arduino IDE的PC,并且已经部署环境(安装好开发板的串口驱动); NodeMCU ESP8266 开发板; USB线(根据实际开发板的情况,本文需要Micro-USB的线); 具体如下图所示; 本文默

    2024年02月06日
    浏览(57)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包