首页 > 解决方案 > 如何使用 Asp.net 5 将 CustomerId 参数添加到 Swagger UI 中的基本身份验证表单?

问题描述

我正在使用带有 Swagger UI 的 ASP.net 5 创建一个 WebAPI 项目。

我添加了基本身份验证方案以使用用户名和密码对用户进行身份验证。CustomerId但是,除了用户名和密码之外,我还需要在标头中发送一个参数。

如何配置 SwaggerUI 以CustomerId向身份验证表单添加一个名为的字段,以便表单需要UsernamePassword并且CustomerId

这就是我配置基本身份验证的方式

public void ConfigureServices(IServiceCollection services)  
{  

    services.AddControllers();  

    #region Configure Swagger  
    services.AddSwaggerGen(c =>  
    {  
        c.SwaggerDoc("v1", new OpenApiInfo { Title = "BasicAuth", Version = "v1" });  
        c.AddSecurityDefinition("basic", new OpenApiSecurityScheme  
        {  
            Name = "Authorization",  
            Type = SecuritySchemeType.Http,  
            Scheme = "basic",  
            In = ParameterLocation.Header,  
            Description = "Basic Authorization header using the Bearer scheme."  
        });  
        c.AddSecurityRequirement(new OpenApiSecurityRequirement  
        {  
            {  
                  new OpenApiSecurityScheme  
                    {  
                        Reference = new OpenApiReference  
                        {  
                            Type = ReferenceType.SecurityScheme,  
                            Id = "basic"  
                        }  
                    },  
                    new string[] {}  
            }  
        });  
    });
}

标签: c#asp.net-coreswaggeropenapiswashbuckle

解决方案


推荐阅读