这可能是因为您的身份验证方案配置不正确,您需要将身份验证方案添加到您的服务配置中。请参考以下代码示例:
//在Startup.cs文件中的ConfigureServices方法中添加以下代码 public void ConfigureServices(IServiceCollection services) { services.AddAuthentication(options => { options.DefaultAuthenticateScheme = JwtBearerDefaults.AuthenticationScheme; options.DefaultChallengeScheme = JwtBearerDefaults.AuthenticationScheme; }) .AddJwtBearer(options => { options.TokenValidationParameters = new TokenValidationParameters { ValidateIssuer = true, ValidateAudience = true, ValidateLifetime = true, ValidateIssuerSigningKey = true, ValidIssuer = Configuration["Jwt:Issuer"], ValidAudience = Configuration["Jwt:Audience"], IssuerSigningKey = new SymmetricSecurityKey(Encoding.UTF8.GetBytes(Configuration["Jwt:Key"])) }; });
// ...
}
其中,JwtBearerDefaults.AuthenticationScheme为JWT身份验证方案,ValidateIssuer、ValidateAudience、ValidateLifetime和ValidateIssuerSigningKey是TokenValidationParameters的验证参数。ValidIssuer和ValidAudience将从appsettings.json文件中读取,需要按照您的实际设置进行更改。
希望这个解决方案能够解决您的问题!