有的時候作網站,就須要記住用戶登陸信息,下次再登陸網站時,不用重複輸入用戶名和密碼,原理是瀏覽器的cookie把狀態給記住了!git
那麼具體是怎麼實現的呢?下面博主將一部分代碼貼出來,想要完整版的Demo能夠到百度雲和碼雲下載,瀏覽器
百度雲下載連接:https://pan.baidu.com/s/1rfQNxpM8WGxkBbdiS1mLeQ 密碼:if1qcookie
馬雲下載連接:https://gitee.com/WuFengZui/RememberLoginDemo 【沒有下載連接的都是耍流氓 哈哈!!】網站
我們先來看看效果圖:ui
下面是添加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方法spa
/// <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方法code
/// <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方法blog
/// <summary> /// 刪除Cookie的值 /// </summary> /// <param name="cookieName">Cookie名稱</param> /// <returns></returns> public static void RemoveCookie(string cookieName) { SetCookie(cookieName, "", DateTime.Now.AddDays(1)); }
好了 上面是用到的主要代碼 有須要完整Demo的請去文章開頭給的連接下載 祝你們早日成爲大牛 成爲一個本身仰慕的人!get