zoukankan      html  css  js  c++  java
  • 注意Request.Cookies["UserID"]的用法

    注意Request.Cookies["UserID"]的用法
    我们在项目中通常要设置这样的东东:
    在没有经过登陆验证时,直接在地址栏输入地址页面是不能访问的,
    而这种方式我一般采用的是在通用类中验证Response.Cookies["UserID"]是否为空
    的方式进行判断,如果为空,将地址重定向登陆页面。
    具体代码:
    login.aspx.cs

      HttpCookie cookie = Request.Cookies["UserID"];
            if (cookie != null)
            {
                cookie.Value = "ivan";          
                Response.Cookies.Set(cookie);
            }
            else
            {
                cookie = new HttpCookie("UserID");
                cookie.Value = "ivan";
                Response.Cookies.Add(cookie);
            }
            Response.Redirect("Main.aspx");

    basePage.cs(继承了System.Web.UI.Page)
    在构造函数中:
     public BasePage()
        {       
            if (HttpContext.Current.Request.Cookies["UserID"] == null)
            {
               // Response.Redirect("/login.aspx");
                Page.RegisterStartupScript("msg", "<script>this.parent.location.href='login.aspx'</script>");
            }
        }

    以上就实现了限制不通过登陆而直接输入地址访问页面的功能。
    提示:最初我在BasePage()中获取cookes的方式直接写成了,if(Request.Cookies["UserID"] == null)
    这样将会报“System.Web.HttpException: 请求在此上下文中不可用”,
    改为 if (HttpContext.Current.Request.Cookies["UserID"] == null)问题解决。

    人生无处不PK
  • 相关阅读:
    evernote100个做笔记的好方法
    平衡二叉树的调整模版
    晨间日记的奇迹
    hdu 2952 Counting Sheep
    hdu 1535 Invitation Cards
    poj 3259 Wormholes(spfa)
    poj 2263 Heavy Cargo(floyd)
    poj 3268 Silver Cow Party(SPFA)
    hdu 1690 Bus System
    hdu 3631 Shortest Path(Floyd)
  • 原文地址:https://www.cnblogs.com/ivanyb/p/1081749.html
Copyright © 2011-2022 走看看