ASP.NET 防止用户跳过登陆界面
欢迎进入.NET社区论坛,与300万技术人员互动交流 >>进入
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.试试看,呵呵 ,,,
【责编:ivy】