![]() |
1
4
对我来说,解决办法是 浏览器会话 持久的 设置低过期时间 将创建一个持久cookie,这意味着当浏览器在到期时间内关闭并重新打开时,它将被记住。以下对我有效:
|
![]() |
2
3
因此,当用户第一次到达并使用“记住我”进行身份验证时,您应该编写一个持久的cookie,如下所示。
假设用户没有注销并离开网页,并在某个时间后返回。您只需如下调用MembershipUser.GetUser(),然后检查用户是否已经从FormsAuthentication编写的持久cookie中记录下来。
编辑有两种方法可以做到这一点。 1.)在global.asax的Session_Start event中检查上述身份验证,并设置在该特定会话的所有页面上都可用的会话密钥。 2.)另一种方法是保留一个继承自System.Web.UI.Page的通用应用程序范围的公共页面基类,并充当所有asp.net页面的基类。在公共PageBase类的页面加载中,检查上面提到的身份验证。在这种情况下,您必须小心地编写条件重定向,因为这可能会走向无限重定向而没有结束,因为它将在从公共PageBase类加载所有页面时运行。
|
![]() |
luffy · 如何防止浏览器身份验证对话框angularjs 7 年前 |
![]() |
Ant · 如何防止用户使用特定用户名注册? 8 年前 |
![]() |
Bogdan · Asp.net共享同一域中两个应用程序的身份验证 9 年前 |
|
user2760152 · 无法使用curl进行身份验证 10 年前 |
![]() |
NoWar · 如何在不登录的情况下对用户进行身份验证 11 年前 |
![]() |
Knerd · Request.IsAuthenticated即使数据库为空 11 年前 |
|
Jonnymaboy · asp.net用户身份验证的最佳方法网络表单 11 年前 |