C# 如何阻止身份中间件在401上重定向?

C# 如何阻止身份中间件在401上重定向?,c#,authorization,identity,middleware,C#,Authorization,Identity,Middleware,使用AspNetCore RC2(现在是v1)。。。混合使用和身份中间件进行身份验证和授权。浏览了教程(链接),并使用WebAPI获得了令牌身份验证和授权 我需要Startup.cs配置中的“app.UseIdentity()”,以便使用Identity框架管理用户和角色。问题是:当匿名用户试图访问带有[Authorize]的端点时,它会导致WebAPI重定向到“account/login”,而不是简单地返回401(unauthorized)状态 我见过人们谈论如何在使用cookie身份验证时阻

使用AspNetCore RC2(现在是v1)。。。混合使用和身份中间件进行身份验证和授权。浏览了教程(链接),并使用WebAPI获得了令牌身份验证和授权

我需要Startup.cs配置中的“app.UseIdentity()”,以便使用Identity框架管理用户和角色。问题是:当匿名用户试图访问带有[Authorize]的端点时,它会导致WebAPI重定向到“account/login”,而不是简单地返回401(unauthorized)状态

我见过人们谈论如何在使用cookie身份验证时阻止这种情况,但这没有帮助,因为我只使用令牌


有人能告诉我如何告诉身份中间件停止重定向未经授权的尝试吗?(如果需要代码,请告诉我。):)

这似乎已停止重定向(Startup.cs,ConfigureServices方法):

services.Configure(选项=>
{
options.Cookies.applicationcokie.AutomaticAuthenticate=false;
options.Cookies.applicationcokie.automaticcchallenge=false;
options.Cookies.applicationcokie.LoginPath=PathString.Empty;
options.User.RequireUniqueEmail=true;
options.SignIn.RequireConfirmedEmail=true;
});

实际上,只需将
options.Cookies.ApplicationCookie.AutomaticChallenge
设置为
false
即可阻止标识更改响应,因此不会自动重定向。
services.Configure<IdentityOptions>(options =>
{
        options.Cookies.ApplicationCookie.AutomaticAuthenticate = false;
        options.Cookies.ApplicationCookie.AutomaticChallenge = false;
        options.Cookies.ApplicationCookie.LoginPath = PathString.Empty;
        options.User.RequireUniqueEmail = true;
        options.SignIn.RequireConfirmedEmail = true;
});