该错误通常与用户未经过身份验证而尝试访问需要身份验证的资源时发生。解决此问题的方法是在代码中进行身份验证并在未经过身份验证时不要访问需要身份验证的资源。
以下是一个示例:
services.AddAuthentication(options => { options.DefaultScheme = JwtBearerDefaults.AuthenticationScheme; options.DefaultChallengeScheme = JwtBearerDefaults.AuthenticationScheme; }) .AddJwtBearer(options => { options.Authority = Configuration["Authorization:Authority"]; options.Audience = Configuration["Authorization:Audience"]; options.RequireHttpsMetadata = false; options.SaveToken = true; });
[Authorize] public class MyController : ControllerBase { // code }
通过这些步骤,您可以在用户未经过身份验证时避免访问受保护的资源,并且不会出现“无法读取未定义属性”的错误。