看起来你有一堆授权片,但没有认证middlware,所以系统不知道授权失败时它应该做什么。
返回状态代码取决于您选择的身份验证中间件。如果您选择了承载令牌,那么假设中间件是正确的,您将获得401。如果您选择了cookie auth,那么您将获得302,因为它针对的是浏览器,并且正在尝试重定向到您的登录页面。
例如,如果在您的Configure()中添加
app.UseCookieAuthentication(options => { options.AuthenticationScheme = "Cookie"; options.LoginPath = new PathString("/Account/Unauthorized/"); options.AccessDeniedPath = new PathString("/Account/Forbidden/"); options.AutomaticAuthentication = true; });
当您的身份验证发生时,您可能会看到重定向到/ Account / Unauthorized。