首页 > 其他分享 >swagger配置

swagger配置

时间:2023-07-04 16:57:09浏览次数:40  
标签:swagger Bearer 配置 V1 var new Swagger

1.引入Swagger包。

nuget引入Swashbuckle.AspNetCore

 

2、配置Swagger中间件

在Startup类ConfigureServices方法中添加Swagger服务并配置文档信息

 

services.AddSwaggerGen(c =>
            {
                // 使用反射获取xml文件。并构造出文件的路径 //需要在项目-属性-生成里面勾上XML文档文件
                var xmlFile = $"{Assembly.GetExecutingAssembly().GetName().Name}.xml";
                var xmlPath = Path.Combine(AppContext.BaseDirectory, xmlFile);
                // 启用xml注释. 该方法第二个参数启用控制器的注释,默认为false.
                c.IncludeXmlComments(xmlPath, true);
                //Bearer 的scheme定义
                var securityScheme = new OpenApiSecurityScheme()
                {
                    Description = "JWT Authorization header using the Bearer scheme. Example: \"Authorization: Bearer {token}\"",
                    Name = "Authorization",
                    //参数添加在头部
                    In = ParameterLocation.Header,
                    //使用Authorize头部
                    Type = SecuritySchemeType.Http,
                    //内容为以 bearer开头
                    Scheme = "bearer",
                    BearerFormat = "JWT"
                };
                //把所有方法配置为增加bearer头部信息
                var securityRequirement = new OpenApiSecurityRequirement
                    {
                        {
                                new OpenApiSecurityScheme
                                {
                                    Reference = new OpenApiReference
                                    {
                                        Type = ReferenceType.SecurityScheme,
                                        Id = "Bearer"
                                    }
                                },
                                new string[] { }
                        }
                    };
                //注册到swagger中
                c.AddSecurityDefinition("Bearer", securityScheme);
                c.AddSecurityRequirement(securityRequirement);
            });

接口信息标记

 展示效果

 

最后Configure中增加

    app.UseSwagger();

    // Enable middleware to serve swagger-ui (HTML, JS, CSS, etc.),
    // specifying the Swagger JSON endpoint.
    app.UseSwaggerUI(c =>
    {
        c.SwaggerEndpoint("/swagger/v1/swagger.json", "My API V1"); 
    });
扩展:分组呈现

 

configureServices中

c.SwaggerDoc("V1", new OpenApiInfo { Title = "计划任务", Version = "V1" });
c.SwaggerDoc("V2", new OpenApiInfo { Title = "My API2", Version = "V2" });

Configure中

options.SwaggerEndpoint($"/swagger/V1/swagger.json", "V1");
options.SwaggerEndpoint($"/swagger/V2/swagger.json", "V2");

控制器中

 结果

 根据控制上分组标记 动态呈现方式 -----未完待续

标签:swagger,Bearer,配置,V1,var,new,Swagger
From: https://www.cnblogs.com/manwwx129/p/17526105.html

相关文章

  • 微信小程序配置自动更新,微信小程序自动升级
    我们开发完小程序,发布新版本之后,用户如果想体验新版本,需要把小程序从使用列表删除,在重新搜索之后,再次打开,新的版本才会生效。但是, 随着我们更新次数的增加,这种方式就很不友好,用户体验下降,所以在开发中,我们就要考虑配置小程序自动更新。首先,我们需要了解下小程序的运行机制,小程序......
  • java工具类static静态方法读取yml配置
    当我们需要在工具类中获取yml配置的时候,由于变量是staic导致获取不到yml配置因为spring加载静态方法比IOC早,所以不能直接使用@Value注解读取yml配置,读取结果是null。@ComponentpublicclassTestUtil{//使用@Value注解读取yml配置的数据@Value("${test.url}")......
  • Maven 安装和配置
    Maven1.下载下载途径: Maven–DownloadApacheMaven2.系统配置解压后,配置系统变量如下:  3.Maven配置阿里云镜像修改config/settings.xml文件<mirror> <id>nexus-aliyun</id> <mirrorOf>*,!jeecg,!jeecg-snapshots</mirrorOf> <name>Nexusaliyun<......
  • k3s 基础 —— 配置 loki
    官方文档核心组件3个chart:promtail这是一个agent代理客户端,用于收集日志,将日志传送给lokiloki核心组件,主要功能是日志数据的写入与分析。包含gateway、read、write3个组件。kube-prometheus-stack这个技术栈包含prometheus,grafana,prometheusoperator等组件。p......
  • containerd 安装和配置
    使用containerd不仅性能提高了(调用链变短了),而且资源占用也会变小(Docker不是一个纯粹的容器运行时,具有大量其他功能)。调用链Docker作为k8s容器运行时,调用关系如下:kubelet-->dockershim(在kubelet进程中)-->dockerd-->containerdContainerd作为k8s容器运行时,......
  • Silence - 博客园主题配置
    Silence-博客园主题配置部署指南https://esofar.github.io/cnblogs-theme-silence/#/guide配置选项下列所有选项均需要配置在「页脚HTML代码」处的window.$silence中配置用户选项avatar类型:String默认值:null该配置项用来设置左侧栏中博主头像图片,未......
  • idea配置vue.js启动vue项目
    最近老师给力一个项目比赛,那个是前后端分离的。我之前了解过一些,我也配置过idea的vue.js,但是好久不用忘了。所以重新找回了一下:  ......
  • Application Request Routing 反向代理配置示例
    第一步:安装URLRewrite 第二步:安装ApplicationRequestRouting下载地址:x86installer / x64installer第三步:配置 效果图:  对应配置文件<?xmlversion="1.0"encoding="UTF-8"?><configuration><system.webServer><rewrite>......
  • 第四天(Thymeleaf,MVC自动配置原理,,配置项目环境及首页,页面国际化,登录+拦截器)
    ThymeleafMVC自动配置原理ContentNegotiatingViewResolver内容协商视图解析器转换器和格式化器配置项目环境及首页页面国际化中英切换登录+拦截器......
  • swagger常用的几个注解
    类上@Api()tags:说明该类的作用,参数是个数组,可以填多个。value="该参数没什么意义,在UI界面上不显示,所以不用配置"description="用户基本信息操作"方法上@ApiOperation()value="方法的用途和作用"notes="方法的注意事项和备注"tags:说明该方法的作用,参数是个数组......