1
2
好的,回答我自己的问题。 在研究了这个问题并进行了更多的研究之后,我发现当一个web应用程序受到表单身份验证的保护时,用户 ,情况就是这样:
如果一个web服务被AJAX(xmlHttpRequest对象)调用并返回401,那么浏览器当然会显示一个弹出的登录框。 现在,您应该做的是向应用程序\u PostAuthenticateRequest添加一些代码,以防止抛出401 for webservices。
|
2
1
我看到两种解决办法:
这样,只要浏览器窗口打开,会话就不会过期。 (2) 在每个ajax请求上检查响应的状态。如果响应包含“401 unauthorized”代码(或与200不同的任何其他代码),则表示会话已过期,而不是将响应加载到页面中的某个对话框中,而是将用户重定向到登录页面。
最好的解决办法是将上述两种机制结合起来。只要页面在浏览器中显示,心跳机制将有助于保持会话活动。但这并不能保证这一点。会话过期时,可以断开与服务器的连接并重新打开。因此,无论如何,您都应该检查响应状态。 |
luffy · 如何防止浏览器身份验证对话框angularjs 7 年前 |
Ant · 如何防止用户使用特定用户名注册? 8 年前 |
Bogdan · Asp.net共享同一域中两个应用程序的身份验证 9 年前 |
user2760152 · 无法使用curl进行身份验证 10 年前 |
NoWar · 如何在不登录的情况下对用户进行身份验证 11 年前 |
Knerd · Request.IsAuthenticated即使数据库为空 11 年前 |
Jonnymaboy · asp.net用户身份验证的最佳方法网络表单 11 年前 |