我在 ASP.NET Core 3.1 Web Api 项目中遇到不记名身份验证问题。
我这样配置身份验证:
services.AddAuthentication(JwtBearerDefaults.AuthenticationScheme)
.AddJwtBearer(options =>
{
options.RequireHttpsMetadata = false;
options.TokenValidationParameters = new TokenValidationParameters
{
ValidateIssuer = true,
ValidIssuer = AuthHelper.Issuer,
ValidateAudience = true,
ValidAudience = AuthHelper.Audience,
ValidateLifetime = true,
IssuerSigningKey = AuthHelper.GetSymmetricSecurityKey(),
ValidateIssuerSigningKey = true,
};
});
此外,我在控制器和配置方法中添加了[Authorize]
属性。app.UseAuthorization();
我在 Postman 中配置了请求。我尝试在“授权”选项卡和手动方式中配置授权(添加“授权”标题)。同样的结果:我得到了正确的答案,没有任何错误。
但是,当我从我的颤振应用程序发送请求时,我收到“404 Not Found”错误。
从颤振应用程序获取请求:
Map<String, String> authHeaders = <String, String>{
'Content-Type': 'application/json; charset=UTF-8',
'Authorization': 'Bearer $authToken'
};
final response = await http.get(_url, headers: authHeaders);
有任何想法吗?我错过了什么?