5 回答

TA貢獻(xiàn)1784條經(jīng)驗(yàn) 獲得超2個(gè)贊
首先,不明確你查找cookie的方式是否正確,瀏覽器是否支持cookie,一般都采用編程方式,比如寫入cookie并試圖將其取出.
其次,每一個(gè)cookie都附帶一個(gè)被稱為"過期時(shí)間"的參數(shù),瀏覽器在檢查此參數(shù)時(shí),會(huì)自動(dòng)判斷是否已過期并執(zhí)行清理.
以下是C#代碼:
Response.Cookies["username"].Value = "第一個(gè)cookie";
Response.Cookies["username"].Expires = DateTime.Now.AddDays(1);
if (Request.Cookies["cookie"] != null)
Response.Write("瀏覽器支持cookie!");
Response.Cookies["username"].Expires = DateTime.Now.AddDays(-1);//將這個(gè)Cookie過期掉.
else
Response.Write("瀏覽器不支持cookie!");

TA貢獻(xiàn)2012條經(jīng)驗(yàn) 獲得超12個(gè)贊
Request.Cookies.Clear()這個(gè)方法并不是刪除Cookie
刪除 Cookie(即從用戶的硬盤中物理移除 Cookie)是修改 Cookie 的一種形式。
由于 Cookie 在用戶的計(jì)算機(jī)中,因此無法將其直接移除。
但是,可以讓瀏覽器來為您刪除 Cookie。
該技術(shù)是創(chuàng)建一個(gè)與要?jiǎng)h除的 Cookie 同名的新 Cookie,
并將該 Cookie 的到期日期設(shè)置為早于當(dāng)前日期的某個(gè)日期。
當(dāng)瀏覽器檢查 Cookie 的到期日期時(shí),瀏覽器便會(huì)丟棄這個(gè)現(xiàn)已過期的 Cookie。
下面的代碼示例演示刪除應(yīng)用程序中所有可用 Cookie 的一種方法:
HttpCookie aCookie;
string cookieName;
int limit = Request.Cookies.Count;
for (int i = 0; i < limit; i++)
{
cookieName = Request.Cookies[i].Name;
aCookie = new HttpCookie(cookieName);
aCookie.Expires = DateTime.Now.AddDays(-1);
Response.Cookies.Add(aCookie);
}

TA貢獻(xiàn)1831條經(jīng)驗(yàn) 獲得超4個(gè)贊
int id = 1;
HttpCookie cookie = new HttpCookie("ID");
DateTime dt = DateTime.Now;
TimeSpan ts = new TimeSpan(1, 0, 0);
cookie.Expires.Add(ts);
cookie.Values.Add("ID", id.ToString());//注意values.Add和Value=的區(qū)別
Response.AppendCookie(cookie);
Response.Write(Request.Cookies["ID"].Values["ID"]); //Request.Cookies["ID"]:獲取Cookies;.value則是獲取了Cookies的所有內(nèi)容,.Values["ID"]獲取名稱的ID的項(xiàng)的值

TA貢獻(xiàn)1835條經(jīng)驗(yàn) 獲得超7個(gè)贊
c#中cookies的讀取寫入操作如下:
/////////////////////////////讀取///////////////////////////////
//獲得此cookie對象
HttpCookie cookie = Request.Cookies["demo"];
//檢驗(yàn)Cookie是否已經(jīng)存在
if (null == cookie) {
Response.Write("Cookie not found. <br><hr>");
}
else {
//顯示Cookie的值
String strCookieValue = cookie.Value.ToString();
Response.Write("The " + strCookieName + " cookie contains: <b>"
+ strCookieValue + "</b><br><hr>");
}
/////////////////////////////寫入///////////////////////////////
//創(chuàng)建一個(gè)新Cookie
HttpCookie cookie = new HttpCookie("demo");
//設(shè)定Cookie的值
cookie.Value = "value";
//設(shè)定cookie生命為1周,也就是7天
cookie.Expires = DateTime.Now.AddDays(7);
//添加Cookie
Response.Cookies.Add(cookie);
補(bǔ)充:利用cookie給密碼框賦值,如果是服務(wù)器端控件 TextBox,則使用這樣的方式
this.txtpwd.Attributes.Add("value", cookie.Values[Comman.Cookie_Pwd]);
- 5 回答
- 0 關(guān)注
- 866 瀏覽
添加回答
舉報(bào)