该错误是由于 ASP.NET Core 应用程序正在尝试访问未经授权的 Cookie,因此我们需要在 Startup.cs 文件中添加以下代码来解决此问题:
在 ConfigureServices 方法中添加以下代码:
services.AddAuthentication(CookieAuthenticationDefaults.AuthenticationScheme).AddCookie(options => { options.Cookie.HttpOnly = true; options.Cookie.SecurePolicy = CookieSecurePolicy.Always; options.Cookie.SameSite = SameSiteMode.None; options.Events.OnRedirectToLogin = context => { context.Response.StatusCode = 401; return Task.CompletedTask; }; });
在 Configure 方法中添加以下代码:
app.UseCookiePolicy(); app.UseAuthentication();
这些代码将启用 Cookie 身份验证,并针对此问题添加了以下选项:
如果您的应用程序需要使用其他驱动程序进行身份验证,例如 OAuth 或 OpenId Connect,请确保将它们添加到启动程序中,并相应地配置它们。