gpt4 book ai didi

javascript - 如何使用 ajax 检查我的 MVC session 是否过期?

转载 作者:行者123 更新时间:2023-11-29 14:49:43 25 4
gpt4 key购买 nike

我适本地设置了我的 web.config,它工作正常,但只有当用户执行 httpPost 时,它才会识别出它应该重定向:

  <system.web>
<sessionState mode="InProc" timeout="5" />
<compilation debug="true" targetFramework="4.5.1" />
<httpRuntime targetFramework="4.5.1" />
<authentication mode="Forms">
<forms loginUrl="~/Login/Login"></forms>
</authentication>

我在 _Layout 中设置了这段代码:

var _redirectUrl = '@Url.Action("Logout", "Login")';
$(document).ajaxSuccess(function (event, request, settings, xhr, props, jqXHR) {
if (jqXHR.status == 401) {
window.location.href = _redirectUrl;
}
});

jqXHR.status 在我的浏览器调试器中返回 undefined,我也尝试了 props.status 但仍然未定义。有什么建议吗?

最佳答案

对超时 session 的请求将导致 HTTP 状态 302(已找到),从而导致透明的重定向。因此 jQuery 不会自动处理这个问题。您可以让服务器返回 HTTP 状态 401(未授权)而不是重定向。这是一篇文章,其中包含您可以复制的代码:

http://blogs.perficient.com/microsoft/2014/02/gracefully-handle-mvc-user-session-expiration-in-javascript/

关于javascript - 如何使用 ajax 检查我的 MVC session 是否过期?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27545113/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com