繁体   English   中英

拒绝带有401.1的ASP.NET MVC 5登录POST Http请求

[英]Reject ASP.NET MVC 5 Login POST Http request with 401.1

我在我的MVC网站中使用香草身份2.x进行身份验证。 客户端angularjs正在向帐户控制器的Login方法发送发布请求。

现在,用例是当用户被禁用时,拒绝带有Http状态代码401.1的http发布请求。

Vanilla Login方法根据登录成功或失败返回布尔值。

我尝试发送状态代码设置为401的Http响应,但浏览器在标头变量中收到带有401的200 OK。

如何发送带有401的响应,而不是被200代码劫持。

如果我使用HttpUnauthorized,则浏览器会收到500个内部服务器以及整个aspx页面内容。

我正在使用MVC 5.2,C#6.0

您应该抛出适当的异常-HttpResponseException。 尝试这样做:

var message = new HttpResponseMessage(HttpStatusCode.Unauthorized) { ReasonPhrase = "ohhh no!" };    
throw new HttpResponseException(msg);

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM