0

我正在使用 asp.net 会员资格,我在根目录有几个页面,例如 loin、register、forget pass,所有用户在登录或未注册之前都可以访问这些页面,我想在用户登录后停止这些页面访问,我的意思是如果用户在地址栏中手动键入 URL,它允许访问这些页面如何防止这种情况发生?另外,我在登录后面临如何重定向到特定页面的问题。

4

2 回答 2

1

您可以使用 UrlReferrer 来验证页面是否通过导航访问。UrlReferrer 获取有关链接到当前 URL 的客户端先前请求的 URL 的信息。有关详细信息,请访问此链接

 if(Request.UrlReferrer == null)
 {
   //code to redirection to login page
 }
于 2012-05-10T10:41:09.803 回答
1

登录后重定向检查FormAuthentication.RedirectfromLoginPage

public void Login_OnClick(object sender, EventArgs args)
{
   if (Membership.ValidateUser(UsernameTextbox.Text, PasswordTextbox.Text))
      FormsAuthentication.RedirectFromLoginPage(UsernameTextbox.Text, NotPublicCheckBox.Checked);
   else
     Msg.Text = "Login failed. Please check your user name and password and try again.";
}

您可以通过以下方式检查用户是否经过身份验证

   Page.User.Identity.IsAuthenticated

检查此链接以获取表单身份验证

于 2012-05-10T10:49:17.150 回答