【问题标题】:Don't add Bearer verification不添加承载验证
【发布时间】:2022-01-11 07:26:30
【问题描述】:

我现在已经创建了一个asp.net core项目,正在做swagger验证token,都可以,但是不加Bearer开头怎么验证,怎么办?

enter image description here

【问题讨论】:

  • 您能澄清一下您的问题吗?例如,“验证而不添加 Bearer 的开头”是什么意思?正如目前所写,目前尚不清楚您要做什么。如果您发布当前代码并解释您如何尝试解决问题以及遇到问题的地方也会有所帮助。
  • 我使用swagger验证token,开头需要输入Bearer

标签: asp.net-core jwt swagger


【解决方案1】:

如果你想省略“Bearer”前缀标签,你可以这样做:

        services.AddSwaggerGen(config =>
            {   
                      ////Name the security scheme
                config.AddSecurityDefinition("Bearer", new OpenApiSecurityScheme
                {
                    Description = "JWT Authorization",
                    Name = "Authorization",
                    In = ParameterLocation.Header,
                    // Type = SecuritySchemeType.ApiKey,
                    Type = SecuritySchemeType.Http,
                    Scheme = "bearer",
                    BearerFormat="JWT"
                });

                config.AddSecurityRequirement(new OpenApiSecurityRequirement()
{
    {
        new OpenApiSecurityScheme
        {
            Reference = new OpenApiReference
            {
                Type = ReferenceType.SecurityScheme,

           //The name of the previously defined security scheme.
                Id = "Bearer"
            }

        },
        new List<string>()
    }
});

注意:如果使用 SecuritySchemeType.ApiKey - 令牌部分应该是 附加“承载”。

注意 – 如果使用 SecuritySchemeType.Http – 需要使用令牌 没有“承载者”

结果:

【讨论】:

  • 哦是的,就是这样!!
猜你喜欢
  • 2016-07-23
  • 1970-01-01
  • 1970-01-01
  • 2016-03-30
  • 2012-01-14
  • 2019-11-19
  • 2019-06-15
  • 1970-01-01
  • 2015-01-04
相关资源
最近更新 更多