可能有多种原因导致此问题,但以下是一些常见的
services.AddAuthentication(options => { options.DefaultAuthenticateScheme = JwtBearerDefaults.AuthenticationScheme; options.DefaultChallengeScheme = JwtBearerDefaults.AuthenticationScheme; }).AddJwtBearer(options => { options.RequireHttpsMetadata = false; options.SaveToken = true; options.TokenValidationParameters = new TokenValidationParameters { ValidateIssuerSigningKey = true, IssuerSigningKey = new SymmetricSecurityKey(Encoding.ASCII.GetBytes(Configuration.GetSection("Jwt:Key").Value)), ValidateIssuer = false, ValidateAudience = false }; });
services.AddAuthorization(options => { options.AddPolicy("Admin", policy => policy.RequireClaim("Role", "Admin")); });
[Authorize]
public IActionResult Get()
{
var identity = HttpContext.User.Identity as ClaimsIdentity;
IList
return new JsonResult(new
{
Username = claims[0].Value,
Email = claims[1].Value
});
}
axios.defaults.headers.common["Authorization"] = "Bearer " + token;
通过遵循上述步骤,您应该可以解决“AuthenticationScheme:Bearer未经身份验证”的问题。