在我的 ASP.NET MVC4 应用程序中,我使用表单身份验证。应用程序中的一个视图需要通过 jQuerypost()
调用获取一些字符串数据。我写了一个返回字符串的动作。在表单身份验证票到期之前一切正常。过期后,对字符串操作的 AJAX 调用会产生以下结果:
- 动作中的代码没有被执行
- 该操作返回 HTTP 200 而不是 401
- 该操作将登录视图的 HTML 作为字符串返回
- 因为返回了 200 状态而不是 401,所以控件最终进入
jqXHR.done()
而不是jqXHR.fail()
这是预期的行为吗?我可以做些什么来使操作返回 401 吗?或者我应该做些什么来处理这个问题?