登錄時(shí)記住用戶名和密碼及cookie案例應(yīng)用
登錄樣子,可以參考某一論壇的登錄介面:
記住這些信息,可以使用Cookie來(lái)實(shí)現(xiàn),更多Cookie應(yīng)用,可參考
http://jb51.net/article/33590.htm
http://jb51.net/article/33591.htm
現(xiàn)在我們來(lái)模擬一個(gè)登錄介面:
<table>
<tr>
<td style="width: 15%; text-align: right;">
User Name
</td>
<td>
<asp:TextBox ID="TextBoxUserName" runat="server"></asp:TextBox>
</td>
</tr>
<tr>
<td style="text-align: right;">
Password
</td>
<td>
<asp:TextBox ID="TextBoxPassword" TextMode="Password" runat="server"></asp:TextBox>
</td>
</tr>
<tr>
<td style="text-align: right;">
Remember me
</td>
<td>
<asp:CheckBox ID="CheckBoxRememberMe" runat="server" />
</td>
</tr>
<tr>
<td style="text-align: right;">
</td>
<td>
<asp:Button ID="ButtonLogin" runat="server" Text="Login" OnClick="ButtonLogin_Click" />
</td>
</tr>
</table>
運(yùn)行時(shí)的效果:
我們要判斷用戶在點(diǎn)銨鈕的Click事件時(shí),是否有選擇Remember me這個(gè)CheckBox,如果選中了,要把這個(gè)登錄的信息記錄至Cookie,還要把Cookie的過(guò)期時(shí)間設(shè)置7天之后過(guò)期。反之,只把登錄的信息記錄入Cookie之中,不設(shè)置Cookie的過(guò)期時(shí)間??梢詤⒖枷旅娴牡卿浭录a:
protected void ButtonLogin_Click(object sender, EventArgs e)
{
Response.Cookies["Name"].Expires = DateTime.Now.AddDays(-1);
Response.Cookies["Password"].Expires = DateTime.Now.AddDays(-1);
if (CheckBoxRememberMe.Checked)
{
Response.Cookies["Name"].Expires = DateTime.Now.AddDays(7);
Response.Cookies["Password"].Expires = DateTime.Now.AddDays(7);
}
Response.Cookies["Name"].Value = this.TextBoxUserName.Text.Trim();
Response.Cookies["Password"].Value = this.TextBoxPassword.Text.Trim ();
}
接下來(lái),你還得在Page_load中去讀取Cookie.
protected void Page_Load(object sender, EventArgs e)
{
if (!IsPostBack)
{
if (Request.Cookies["Name"] != null && Request.Cookies["Password"] != null)
{
this.TextBoxUserName.Text = Request.Cookies["Name"].Value;
this.TextBoxPassword.Attributes["value"] = Request.Cookies["Password"].Value;
}
}
}
看看操作演示,演示中有三種狀態(tài)演示,第一種是沒(méi)有點(diǎn)選CheckBox,這樣的話,關(guān)閉窗口,下次再打開(kāi)時(shí),沒(méi)有記住登錄的信息。
第二是點(diǎn)選擇了CheckBox,這樣下次再打開(kāi)窗口,還可以看到帳號(hào)與密碼存儲(chǔ)在相應(yīng)的文本框中,這都是Cookie沒(méi)有過(guò)期。
第三種,再點(diǎn)一次登錄,沒(méi)有點(diǎn)選remember me的CheckBox,這樣系統(tǒng)又移除了Cookie:

相關(guān)文章
ASP.NET內(nèi)置對(duì)象之Application對(duì)象
Application對(duì)象是HttpApplicationState類的一個(gè)實(shí)例,它可以產(chǎn)生一個(gè)所有Web應(yīng)用程序都可以存取的變量,這個(gè)變量的可以存取范圍涵蓋全部使用者,也就是說(shuō)只要正在使用這個(gè)網(wǎng)頁(yè)的程序都可以存取這個(gè)變量。2008-09-09
.NET Core 3.0 可回收程序集加載上下文的實(shí)現(xiàn)
這篇文章主要介紹了.NET Core 3.0 可回收程序集加載上下文的實(shí)現(xiàn),文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2019-06-06
Asp.net中的數(shù)據(jù)綁定Eval和Bind應(yīng)用示例
這篇文章主要介紹了Asp.net中的數(shù)據(jù)綁定Eval和Bind的應(yīng)用,需要的朋友可以參考下2014-05-05
asp.net 水晶報(bào)表隔行換色實(shí)現(xiàn)方法
水晶報(bào)表隔行換色實(shí)現(xiàn)方法,需要的朋友可以參考下。2009-11-11
談?wù)勅绾卧贏SP.NET Core中實(shí)現(xiàn)CORS跨域
本篇文章主要介紹了如何在ASP.NET Core中實(shí)現(xiàn)CORS跨域,CORS主要是解決Ajax跨域限制的問(wèn)題,有興趣的可以了解一下。2016-12-12
VS2019下opencv4.1.2配置圖文教程(永久配置)
這篇文章主要介紹了VS2019下opencv4.1.2配置圖文教程,文中安裝步驟介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2019-11-11
Global.asax的Application_Error實(shí)現(xiàn)錯(cuò)誤記錄/錯(cuò)誤日志的代碼
本文為大家介紹下利用Global.asax的Application_Error實(shí)現(xiàn)錯(cuò)誤記錄,具體如下,有此需求的朋友可以參考下,希望對(duì)大家有所幫助2013-08-08

