.NET Core 3.1 .NET 5版本下 配置swagger中的JWT

首先引入程序包:Microsoft.AspNetCore.Authentication.JwtBearer

之后在swagger声明中 加入鉴权组件  services.AddSwaggerGen中

#region Swagger使用鉴权组件
                c.AddSecurityDefinition("Bearer", new OpenApiSecurityScheme
                {
                    In = ParameterLocation.Header,
                    Type = SecuritySchemeType.ApiKey,
                    Description = "直接在下框中输入Bearer {token}(注意两者之间是一个空格)",
                    Name = "Authorization",
                    BearerFormat = "JWT",
                    Scheme = "Bearer"
                });
                c.AddSecurityRequirement(new OpenApiSecurityRequirement
        {
          {
            new OpenApiSecurityScheme
            {
              Reference=new OpenApiReference
              {
                Type=ReferenceType.SecurityScheme,
                Id="Bearer"
              }
            },
            new string[] {}
          }
        });
                #endregion

在执行就好了  注意执行顺序  需要在app.UseAuthorization(); 上面

//添加到管道中 鉴权
            app.UseAuthentication();

 

posted @ 2021-03-05 15:01  草莓味怪怪泥  阅读(188)  评论(0)    收藏  举报