会话过期时,401重定向不起作用

时间:2012-11-15 22:52:51

标签: c# jquery ajax vb.net webmethod

有没有其他人有这个问题?当我谷歌时,互联网只给我401s的电话簿。

当webmethod返回401时,我将jQuery ajax设置为重定向回我的登录页面。

如果某人未登录并尝试,则此工作正常,但如果会话过期,则无法正常工作。它只是坐在那里。还有其他人有这个问题吗?

提前致谢!

净度

如果我在启动后拉起浏览器,我的页面仍然被缓存,并且我尝试用ajax webmethod,它会返回401。当发生这种情况时,我对401代码的jQuery错误处理会重定向到登录页面,就像我告诉过的那样。

然而,如果我的会话过期,它看起来像是发送了401,但是401代码的jQuery ajax错误处理不会触发。

如果这有帮助,在我的旧服务器端页面上,当会话到期并且我尝试做某事时,我得到“用户名和密码不能为空”页面,它也无法像往常一样重定向到登录页面。

会话到期的401是否与401完全不同,甚至没有会话?

感谢所有人的贡献!

1 个答案:

答案 0 :(得分:1)

这是“如何搜索”的答案 - 你要找的是“http状态代码401”,即“未经授权”(RFC2616,即http://www.w3.org/Protocols/rfc2616/rfc2616-sec10.html

当服务器无法以任何理由验证用户授权时,返回此错误非常有意义。所以我认为没有人对此有任何疑问。