zoukankan      html  css  js  c++  java
  • (转)asp.net 使用cookie完成记住密码自动登录

     代码如下 复制代码


            string username = this.txtUserName.Text;//用户名
            string password = this.txtPassword.Text;//密码

            if (UserManager.LoginValidate(username, password) && this.ckState.Checked == true)//判断登录名和密码是否正确和是否选择了记住用户名和密码的复选框
            {
               //判断客户端浏览器是否存在该Cookie 存在就先清除

                if (Request.Cookies["username"] != null && Request.Cookies["password"] != null)
                {
                    Response.Cookies["username"].Expires = System.DateTime.Now.AddSeconds(-1);//Expires过期时间
                    Response.Cookies["password"].Expires = System.DateTime.Now.AddSeconds(-1);
                }
                else
                {
                     //向客户端浏览器加入Cookie (用户名和密码 最好是使用MD5加密)
                    HttpCookie hcUserName1 = new HttpCookie("username");
                    hcUserName1.Expires = System.DateTime.Now.AddDays(7);
                    hcUserName1.Value = username;
                    HttpCookie hcPassword1 = new HttpCookie("password");
                    hcPassword1.Expires = System.DateTime.Now.AddDays(7);
                    hcPassword1.Value = password;
                    Response.Cookies.Add(hcUserName1);
                    Response.Cookies.Add(hcPassword1);
                }
    }

     //------------------------转到登录后的页面(有母板页写母板页最好)------------------------

     代码如下 复制代码
                  if (Request.Cookies["username"] != null && Request.Cookies["password"] != null)
                    {
                        //用户曾登录 
                     
                        username = Request.Cookies["username"].Value.ToString();  //读取Cookie 
                        password = Request.Cookies["password"].Value.ToString();//判断Cookie读取出来的用户名和密码是否能正确登录
                        if (UserManager.LoginValidate(username, password))
                        {
                          //登录后的代码
                 }         }

    //-------------------------------Cookie退出(加一个退出按钮)-------------------------------

    //退出  

     代码如下 复制代码
    HttpCookie hcUserName1 = new HttpCookie("username");   
    hcUserName1.Expires = System.DateTime.Now.AddDays(-7);   
    hcUserName1.Value = username;   
    HttpCookie hcPassword1 = new HttpCookie("password");   
    hcPassword1.Expires = System.DateTime.Now.AddDays(-7);   
    hcPassword1.Value = password;   
    Response.Cookies.Add(hcUserName1);   
    Response.Cookies.Add(hcPassword1);  
  • 相关阅读:
    基于redis集群实现的分布式锁,可用于秒杀商品的库存数量管理,有測试代码(何志雄)
    VC断点失败的原因之中的一个
    由易到难学习递归的精华
    【特征检測】BRIEF特征点描写叙述算法
    POJ 2386 Lake Counting
    Design Pattern 设计模式1
    使用 InstallShield 制作 Delphi 软件安装包
    在64位系统上部署BDE的要点
    SQL SERVER 存储过程中SELECT 返回值如何赋值给变量
    sql语句中的insert 和 insert into 的区别?into有什么用?
  • 原文地址:https://www.cnblogs.com/wanshutao/p/4286074.html
Copyright © 2011-2022 走看看