asp.net頁面狀態(tài)管理cookie和服務(wù)器狀態(tài)管理Session
更新時(shí)間:2010年09月20日 00:27:11 作者:
Session變量將在服務(wù)器為每個(gè)連接建立一個(gè)字典對象,使用的是服務(wù)端保存。Cookie可能會有一個(gè)按照年月日來判斷的作廢日期,而Session級別的變量在連接超時(shí)后就作廢
Cookie:是存儲在客戶端文件系統(tǒng)的文本文件中或客戶端瀏覽器對話的客戶端瀏覽器對話的內(nèi)存中的少量的數(shù)據(jù)。當(dāng)我們在訪問一個(gè)網(wǎng)站網(wǎng)頁,當(dāng)用戶請求該網(wǎng)頁時(shí),應(yīng)用程序會首先檢查用戶在此前是否已經(jīng)登錄過,我們可以通過讀取Cookie獲取用戶信息來判斷是否讓它繼續(xù)訪問
記錄Cookie信息
創(chuàng)建一個(gè)名稱是user的Cookie對象:HttpCookie cookie=new HttpCookie("user");
給Cookie賦值,只能使用字符串賦值:cookie.Value="chenxiaomei";
如果有多個(gè)字符串需要保存,可以通過如下方式完成:
cookie["sex"]="女";
cookie.Values.Add("age","18");
讀取Cookie信息
HttpCookie cookie = Request.Cookies["user"];
if (null==cookie)
{
Response.Write("沒有發(fā)現(xiàn)制定的cookie");
}
else
{
Response.Write("cookie的全部值:" + cookie.Value + "<br/>");
Response.Write("sex值為:" + cookie["sex"] + "<br/>");
Response.Write("age值為:" + cookie["age"] + "<br/>");
}
刪除Cookie
由于Cookie保存在客戶端,但是可以讓瀏覽器為你刪除Cookie。將Cookie的值設(shè)為過去的
某個(gè)日期。
cookie.Expires = DateTime.Now.AddHours(-1);
Session對象
當(dāng)用戶首次與服務(wù)器建立連接時(shí),他就與這個(gè)服務(wù)器建立了一個(gè)Session,同時(shí)服務(wù)器會
自動為其分配一個(gè)SessionID,用以標(biāo)識這個(gè)用戶的唯一身份。
Session的具體操作:
//存儲信息
Session["myname"] = "chenxiaomei";
//獲取信息
string myname = Session["myname"];
//清除session
Session.Clear();//從Session狀態(tài)集合中移除所有的鍵和值
Session.Abandon();//取消當(dāng)前Session會話
Session和Cookie的區(qū)別:
信息的存儲位置不同,保存的時(shí)間也不同
Cookie是網(wǎng)頁服務(wù)器存儲在網(wǎng)頁客戶端硬盤上的文本文件。網(wǎng)頁服務(wù)器向網(wǎng)頁客戶端請求存儲一段信息,信息可以保存在Cookie中。之后每當(dāng)客戶端向服務(wù)器申請一個(gè)頁面時(shí),就會將該信息發(fā)回到服務(wù)器。
Session變量將在服務(wù)器為每個(gè)連接建立一個(gè)字典對象,使用的是服務(wù)端保存。Cookie可能會有一個(gè)按照年月日來判斷的作廢日期,而Session級別的變量在連接超時(shí)后就作廢
記錄Cookie信息
創(chuàng)建一個(gè)名稱是user的Cookie對象:HttpCookie cookie=new HttpCookie("user");
給Cookie賦值,只能使用字符串賦值:cookie.Value="chenxiaomei";
如果有多個(gè)字符串需要保存,可以通過如下方式完成:
cookie["sex"]="女";
cookie.Values.Add("age","18");
讀取Cookie信息
復(fù)制代碼 代碼如下:
HttpCookie cookie = Request.Cookies["user"];
if (null==cookie)
{
Response.Write("沒有發(fā)現(xiàn)制定的cookie");
}
else
{
Response.Write("cookie的全部值:" + cookie.Value + "<br/>");
Response.Write("sex值為:" + cookie["sex"] + "<br/>");
Response.Write("age值為:" + cookie["age"] + "<br/>");
}
刪除Cookie
由于Cookie保存在客戶端,但是可以讓瀏覽器為你刪除Cookie。將Cookie的值設(shè)為過去的
某個(gè)日期。
cookie.Expires = DateTime.Now.AddHours(-1);
Session對象
當(dāng)用戶首次與服務(wù)器建立連接時(shí),他就與這個(gè)服務(wù)器建立了一個(gè)Session,同時(shí)服務(wù)器會
自動為其分配一個(gè)SessionID,用以標(biāo)識這個(gè)用戶的唯一身份。
Session的具體操作:
復(fù)制代碼 代碼如下:
//存儲信息
Session["myname"] = "chenxiaomei";
//獲取信息
string myname = Session["myname"];
//清除session
Session.Clear();//從Session狀態(tài)集合中移除所有的鍵和值
Session.Abandon();//取消當(dāng)前Session會話
Session和Cookie的區(qū)別:
信息的存儲位置不同,保存的時(shí)間也不同
Cookie是網(wǎng)頁服務(wù)器存儲在網(wǎng)頁客戶端硬盤上的文本文件。網(wǎng)頁服務(wù)器向網(wǎng)頁客戶端請求存儲一段信息,信息可以保存在Cookie中。之后每當(dāng)客戶端向服務(wù)器申請一個(gè)頁面時(shí),就會將該信息發(fā)回到服務(wù)器。
Session變量將在服務(wù)器為每個(gè)連接建立一個(gè)字典對象,使用的是服務(wù)端保存。Cookie可能會有一個(gè)按照年月日來判斷的作廢日期,而Session級別的變量在連接超時(shí)后就作廢
相關(guān)文章
ASP.NET?MVC5網(wǎng)站開發(fā)顯示文章列表(九)
顯示文章列表分兩塊,管理員可以顯示全部文章列表,一般用戶只顯示自己的文章列表。文章列表的顯示采用easyui-datagrid,后臺需要與之對應(yīng)的action返回json類型數(shù)據(jù),感興趣的小伙伴們可以參考一下2015-09-09
.Net中的Http請求調(diào)用詳解(Post與Get)
在我們服務(wù)端調(diào)用第三方接口時(shí),如:支付寶,微信支付,我們服務(wù)端需要模擬http請求,下面這篇文章主要給大家介紹了關(guān)于.Net中Http請求調(diào)用(Post與Get)的相關(guān)資料,需要的朋友可以參考下2022-09-09
asp.net System.Guid ToString五種格式
這篇文章主要介紹了asp.net System.Guid ToString五種格式,需要的朋友可以參考下2017-02-02
ASP.NET MVC實(shí)現(xiàn)批量文件上傳
這篇文章主要為大家詳細(xì)介紹了ASP.NET MVC實(shí)現(xiàn)批量文件上傳,簡單介紹單文件上傳的實(shí)現(xiàn)方法,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2018-09-09
asp.net web大文件上傳帶進(jìn)度條實(shí)例代碼
web 大文件上傳 帶進(jìn)度條2008-10-10
.NET6創(chuàng)建Windows服務(wù)的實(shí)現(xiàn)步驟
本文主要介紹了.NET6創(chuàng)建Windows服務(wù)的實(shí)現(xiàn)步驟,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2023-06-06
ASP.NET 在下載文件時(shí)對其重命名的思路及實(shí)現(xiàn)方法
ASP.NET 在下載文件時(shí)對其重命名的思路及實(shí)現(xiàn)方法,需要的朋友可以參考一下2013-06-06
ASP.NET之Response.Cookies.Remove 無法刪除COOKIE的原因
在web開發(fā)中Cookie是必不可少的,.NET自然也有一個(gè)強(qiáng)大的Cookie操作類,我們用起來也非常方便,不過在使用中我們會發(fā)現(xiàn)一個(gè)事情Response.Cookies.Remove刪除不了Cookie,2013-06-06

