ASP.NET中刪除Cookie
ASP.NET中不能直接刪除用戶計(jì)算機(jī)中的 Cookie。但是,可以通過將 Cookie 的到期日期設(shè)置為過去的日期,讓用戶的瀏覽器來刪除Cookie。當(dāng)用戶下一次向設(shè)置該 Cookie 的域或路徑內(nèi)的頁發(fā)出請(qǐng)求時(shí),瀏覽器將確定該 Cookie 已到期并將其移除。
調(diào)用 Cookies集合的 Remove方法可從服務(wù)器端的集合中刪除Cookie,使 Cookie 不會(huì)被發(fā)送至客戶端。但是,如果客戶端已存在 Cookie,則
向 Cookie 分配已過去的到期日期
1. 確定 Cookie 是否存在,如果存在則創(chuàng)建同名的新 Cookie。
2. 將 Cookie 的到期日期設(shè)置為過去的某一時(shí)間。
3. 將 Cookie 添加到 Cookies 集合對(duì)象。
下面的代碼示例演示如何為 Cookie 設(shè)置已過去的到期日期。
- if (Request.Cookies["UserSettings"] != null)
- {
- HttpCookie myCookie = new HttpCookie("UserSettings");
- myCookie.Expires = DateTime.Now.AddDays(-1d);
- Response.Cookies.Add(myCookie);
- }
編譯代碼
此示例需要:
1.一個(gè) ASP.NET 網(wǎng)頁。
2. 一個(gè)先前編寫的名為 UserSettings 的 Cookie,
可靠編程
出于安全原因,您只能讀取屬于同一域的頁所設(shè)置的 Cookie。如果已經(jīng)設(shè)置 Cookie 的 Path屬性,則該 Cookie 也只能用于該域路徑內(nèi)的頁和子文件夾。
在讀取特定 Cookie 值時(shí),請(qǐng)測(cè)試該 Cookie 是否存在以及它是否具有值,否則將發(fā)生異常。以上是ASP.NET中刪除Cookie。
【編輯推薦】