我有一个遗留的asp.net网络表单网站,它使用表单身份验证。现在,我需要在网站中创建一个新的子MVC应用程序。我的新应用程序很可能是SPA,这意味着大多数操作都是通过Ajax完成的。一切正常,直到会话超时,因为一旦超时,我的后台Ajax返回表单登录页面的内容而不是我的json数据。这是正确的会话行为,但是如何知道ajax中的会话超时,然后将页面重定向到登录页面?
答案 0 :(得分:2)
您可以捕获AJAX调用失败并查找401结果,这意味着请求未获得授权。
我假设你在这里使用Web API进行服务调用 - 如果你在普通的MVC控制器上调用方法,你需要做一些工作来确保未经身份验证的请求返回401而不是重定向你到登录页面。