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
  • 相关阅读:
    C# 自定义配置文件
    Mysql JSON字段提取某一个属性值的函数
    linux查看Java线程
    Idea书签管理器的使用
    springboot寻找property的顺序
    SpringBoot的spring-boot-starter有哪些(官方)
    SpringBoot打成jar包的配置方式
    netstat 常用参数总结
    Sentinel统计线程,QPS,RT的方式
    16. kubernetes RBAC
  • 原文地址:https://www.cnblogs.com/ivanyb/p/1081749.html
Copyright © 2011-2022 走看看