当前位置: 移动技术网 > IT编程>开发语言>.net > Asp.Net MVC记住用户登录信息 下次登录无需输入密码

Asp.Net MVC记住用户登录信息 下次登录无需输入密码

2018年09月12日  | 移动技术网IT编程  | 我要评论

蓬街镇中学,洛浦简历,叶倩云

有的时候做网站,就需要记住用户登录信息,下次再登录网站时,不用重复输入用户名和密码,原理是浏览器的cookie把状态给记住了!

那么具体是怎么实现的呢?下面博主将一部分代码贴出来,想要完整版的demo可以到百度云和码云下载,

百度云下载链接:https://pan.baidu.com/s/1rfqnxpm8wgxkbbdis1mleq    密码:if1q

马云下载链接:https://gitee.com/wufengzui/rememberlogindemo      【没有下载链接的都是耍流氓  哈哈!!

 咱们先来看看效果图:

 

下面是添加cookie的代码,不过这个方法是我封装过的,方法中的具体操作可以查看第二段代码

            //创建cookie【防止登录信息泄露,这里使用encode()将信息进行了加密】
                sqlhelper.setcookie("namecookie", sqlhelper.encode(username), datetime.now.adddays(7));
                sqlhelper.setcookie("pwdcookie", sqlhelper.encode(pwd), datetime.now.adddays(7));


            //获取cookie
                string name = sqlhelper.getcookievalue("namecookie");
                string pwd = sqlhelper.getcookievalue("pwdcookie");


            //删除cookie
            sqlhelper.removecookie("namecookie");
            sqlhelper.removecookie("pwdcookie");        

 

封装添加cookie方法

     /// <summary>
        /// 设置cookie值和过期时间
        /// </summary>
        /// <param name="cookiename">cookie名称</param>
        /// <param name="value">值</param>
        /// <param name="expires">过期时间</param>
        public static void setcookie(string cookiename, string value, datetime expires)
        {
            httpcookie cookie = httpcontext.current.request.cookies[cookiename];
            if (cookie != null)
            {
                cookie.value = value;
                cookie.expires = expires;
                httpcontext.current.response.cookies.add(cookie);
            }
            else
            {
                cookie = new httpcookie(cookiename);
                cookie.value = value;
                cookie.expires = expires;
                httpcontext.current.response.cookies.add(cookie);
            }
        }

 封装获取cookie方法

     /// <summary>
        /// 获得cookie的值
        /// </summary>
        /// <param name="cookiename">cookie名称</param>
        /// <returns></returns>
        public static string getcookievalue(string cookiename)
        {
            httpcookie cookie = httpcontext.current.request.cookies[cookiename];
            if (cookie == null)
                return "";
            else
                return cookie.value;
        }

封装删除cookie方法

     /// <summary>
        /// 删除cookie的值
        /// </summary>
        /// <param name="cookiename">cookie名称</param>
        /// <returns></returns>
        public static void removecookie(string cookiename)
        {
            setcookie(cookiename, "", datetime.now.adddays(1));
        }

好了  上面是用到的主要代码   有需要完整demo的请去文章开头给的链接下载   祝大家早日成为大牛   成为一个自己仰慕的人!

如对本文有疑问,请在下面进行留言讨论,广大热心网友会与你互动!! 点击进行留言回复

相关文章:

验证码:
移动技术网