ASP.NET防止用户跳过登陆界面

来源:互联网 发布:php 前后端分离框架 编辑:程序博客网 时间:2024/04/29 04:42

1.在登陆页面的检查登陆成功代码后添加如下代码

Session["UserID"] = txtUserID.Text.Trim();

或者

Session["UserID"] = "OK";

 

例如,在我的 Login.aspx.cs 的登陆按钮响应事件中代码如下:

if (BaseClass.CheckUser(txtUserID.Text.Trim(), txtPwd.Text.Trim()))
{                   
         Session["UserID"] = txtUserID.Text.Trim();

 

         Response.Redirect("Main.aspx");
}
else
 {
         Response.Write("<script>alert('用户名或密码错误');location='Login.aspx'</script>");
}

 

 

2.然后在每个页面的Page_Load的开始处添加如下代码:

if (Session["UserID"] == null || Session["UserID"].ToString() == "")
{
        Response.Write("<Script language='javascript'>window.top.location.href='Login.aspx';</Script>");

 

例如在我的 Main.aspx.cs 的Page_Load代码包含如下内容:

protected void Page_Load(object sender, EventArgs e)
{
        if (Session["UserID"] == null || Session["UserID"].ToString() == "")
        {
            Response.Write("<Script   language='javascript'>window.top.location.href='Login.aspx';</Script>");
        }

 

        if (!IsPostBack)
        {


        }
}

 

3.试试看,呵呵 ,,,