麻豆小视频在线观看_中文黄色一级片_久久久成人精品_成片免费观看视频大全_午夜精品久久久久久久99热浪潮_成人一区二区三区四区

首頁 > 學院 > 開發設計 > 正文

C#讀取設置Cookie

2019-11-14 13:54:14
字體:
來源:轉載
供稿:網友

設置:

HttpCookie cookie = new HttpCookie("cookieName"); cookie.Value = "name1"HttpContext.Current.Response.Cookies.Add(cookie); 

讀取:

HttpContext.Current.Request.Cookies["cookieName"].Value

判斷cookie是否存在:

if(HttpContext.Current.Request.Cookies["cookieName"]==null){//do something}

設置cookie有效期

cookie.Expires = DateTime.Now.AddDays(1);

 

asp.net中Cookies的用法(轉)

一, cookies 寫入

方法1: 
Response.Cookies["username"].Value="gjy"; 
Response.Cookies["username"].Expires=DateTime.Now.AddDays(1); 

方法2: 
System.Web.HttpCookie newcookie=new HttpCookie("username"); 
newcookie.Value="gjy"; 
newcookie.Expires=DateTime.Now.AddDays(1); 
Response.AppendCookie(newcookie);

 

創建帶有子鍵的cookies: 
System.Web.HttpCookie newcookie=new HttpCookie("user"); 
newcookie.Values["username"]="gjy"; 
newcookie.Values["passWord"]="111"; 
newcookie.Expires=DateTime.Now.AddDays(1); 
Response.AppendCookie(newcookie);

或者

HttpCookie UserCookie = new HttpCookie("KindCode");
UserCookie["bigKind"] = lstBigKindCode.SelectedValue.Trim();
UserCookie["smallKind"] = lstSmallKindCode.SelectedValue.Trim();
UserCookie["UserName"] = strUserName;
UserCookie["userKind"] = lsbUserSmallKindCode.SelectedValue;
UserCookie.Expires = DateTime.Now.AddDays(1);//這里設置要保存多長時間.
Response.Cookies.Add(UserCookie);

 

二,cookies的讀取: 

無子鍵讀取: 
if(Request.Cookies["username"]!=null) 

Response.Write(Server.HtmlEncode(Request.Cookies["username"].Value)); 


有子鍵讀取: 
if(Request.Cookies["user"]!=null) 

Response.Write(Server.HtmlEncode(Request.Cookies["user"]["username"].Value));

}

或者

HttpCookie cookie = Request.Cookies["KindCode"];
if (cookie != null)
{
string bigKind = cookie.Values["bigKind"];
string userName = cookie.Values["UserName"];

}

三,cookies的清除

HttpCookie cookie = Request.Cookies["KindCode"];
if (cookie != null)
{
cookie.Expires = DateTime.Now.AddDays(-2);
Response.Cookies.Set(cookie);

}

 

四,Cookie應用小總結

 

一 寫入Cookie

  1. Name 和 Value 屬性由程序設定,默認值都是空引用。

  2. Domain屬性的默認值為當前URL的域名部分,不管發出這個cookie的頁面在哪個目錄下的。

  例如, http://www.kent.com/application1/login.aspx 頁面中發出一個cookie,Domain屬性缺省就是www.kent.com ,可以由程序設置此屬性為需要的值。

  3. Path屬性的默認值是根目錄,即 ”/” ,不管發出這個cookie的頁面在哪個目錄下的。可以由程序設置為一定的路徑來進一步限制此cookie的作用范圍。

  4. Expires 屬性,這個屬性設置此Cookie 的過期日期和時間。如果沒有設置Cookie 的有效期(默認設置),也可以創建 Cookie,但它不會保存到用戶的硬盤上,而是會成為用戶會話信息的一部分,關閉瀏覽器或會話超時這個Cookie即會消失,這種Cookie稱作非永久性的 Cookie。存放sessionID的Cookie就是這樣的一種Cookie,它不存放在硬盤上,只存在內存之中。

  5. 將要發出的Cookie附加到Response的Cookies屬性中就可以將此Cookie發送到客戶端:Reponse.Cookies.Add(Cookie)

  6. Domain屬性+Path屬性 相同的所有Cookie 在客戶端都存在一個文件中,Cookie之間以”*”分割。每個Cookie的第一行是 Cookie 的名稱,第二行是值,第三行是Domain屬性+Path屬性組成的一個字符串,指示此Cookie的作用域,其余各行則包含 Cookie 的日常處理信息,例如過期日期和時間。Cookie 中還有一個簡單的校驗和,如果更改 Cookie 名稱或值的長度,瀏覽器就會檢測到修改并刪除該 Cookie。

  二 讀取Cookie

  1. Request.Cookies 屬性中包含了客戶端發送到服務器的所有Cookie的集合,只有在請求URL的作用范圍內的Cookie才會被瀏覽器連同Http請求一起發送到服務器。

  2. Name 和 Value 屬性和子鍵的值很容易讀到。

  3. Domain 和 Path 屬性 是讀不到的,讀Domain屬性永遠是””,讀Path屬性永遠是 ”/” 。本來這些屬性的用途很有限。如果您的頁面與 Cookie 不在相同的域,您根本就不會在頁面的位置接收到該 Cookie。

  4. 也無法讀取Cookie 的過期日期和時間。事實上,當瀏覽器向服務器發送Cookie 信息時,瀏覽器并未將過期信息包括在內。您可以讀取 Expires 屬性,但總是返回為零的日期/時間值。Expires 屬性的主要作用是幫助瀏覽器執行有關 Cookie 保存的日常管理。從服務器的角度來看,Cookie 要么存在要么不存在,所以對服務器而言,有效期并不是有用的信息。所以,瀏覽器在發送 Cookie 時并不提供此信息。如果您需要 Cookie 的過期日期,就必須重新設置。

  三 修改和刪除 Cookie

  1. 其實你不能直接修改一個Cookie,是創建一個同名的 Cookie,并把該 Cookie發送到瀏覽器,覆蓋客戶機上舊的 Cookie。

  2. 同樣您無法直接將其刪除一個Cookie,可以通過修改一個Cookie達到讓瀏覽器幫你刪除Cookie的目的,修改Cookie的有效期為過去的某個時間,當瀏覽器檢查Cookie 的有效期時,就會刪除這個已過期的 Cookie。

  四 Cookie同Session的關系

  1. asp.net中Session可以采用cookie 和cookieless兩種方法,cookieless方式是將SessionID放在URL中在客戶端和服務端中來回傳遞,不需要用到cookie,在這里不討論這個方式。

  2. 在asp.net中客戶第一次請求一個URL,服務器給這個客戶生成一個SessionID,并以非永久性的 Cookie發送到客戶端。

  3. 非永久性的 Cookie只有在瀏覽器關閉后這些Cookie才隨之消失,Session的超時判斷是這樣的過程:

  3.1 第一次客戶端訪問服務器,會得到一個SessionID,以非永久性的 Cookie發送到客戶端。

  3.2 在這個瀏覽器關閉之前訪問這個URL,瀏覽器都會把這個SessionID發送到服務端,服務端根據SessionID來維持對應此客戶的服務端的各種狀態(就是Session中保存的各種值),在web應用程序中可以對這些Session進行操作。

  3.3 服務端維護此SessionID的過期時間,IIS中可以設置Session的超時時間。每次請求都將導致服務端將此SessioID的過期時間延長一個設置的超時時間。

  3.4 當服務端發現某個SessionID已經過時,即某個客戶已經在設置的超時時間內沒有再次訪問此站點,即將此SessionID,連同跟此SessionID相關的所有Session變量刪除。

  3.5 客戶端的瀏覽器未關閉前,并不知道服務端已經將這個SessionID刪除,客戶端依舊發送此SessionID的cookie到服務端,只是此時的服務端已經不認識此SessionID了,會將此用戶當做新用戶,再次分配一個新的SessionID。


發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 高清做爰免费无遮网站挡 | av电影免费在线 | 久久精品国产一区二区电影 | 强伦女教师视频 | 久久精品中文字幕一区 | 成片免费观看大全 | 久久欧美亚洲另类专区91大神 | 国产成人av免费看 | 免费看日韩片 | 亚洲一区二区中文字幕在线观看 | 日日操夜夜透 | 羞羞视频免费网站男男 | 日韩av有码在线 | 免费午夜视频在线观看 | 中文字幕在线日韩 | 亚洲网站一区 | 亚欧美一区二区 | 九九热久久免费视频 | 黄色大片在线免费观看 | 55夜色66夜色国产精品视频 | 久久久久久久午夜 | 久久精品一二三区白丝高潮 | 一级黄色在线免费观看 | 精品国产一区二区亚洲人成毛片 | 成人黄色小视频网站 | 国产精品1区2区 | 国产一级一国产一级毛片 | 久久精品观看 | 亚洲电影在线观看高清免费 | 亚洲无av| 亚洲成人入口 | 一级黄色免费观看 | 春光影院理论片 | 日本精品婷婷久久爽一下 | 丰满年轻岳中文字幕一区二区 | 911视频免费版 | 蜜桃一本色道久久综合亚洲精品冫 | 高清视频一区二区 | 羞羞电影网 | 在火车上摸两乳爽的大叫 | 久久久久久91 |