我正在嘗試遵守新的歐盟法律的cookie立法,並且需要在用戶同意之前刪除我網站上的所有cookie。目前我使用的成功以下內容:使cookie過期
function deleteAllCookies() {
var cookies = document.cookie.split(";");
for (var i = 0; i < cookies.length; i++) {
var cookie = cookies[i];
var eqPos = cookie.indexOf("=");
var name = eqPos > -1 ? cookie.substr(0, eqPos) : cookie;
document.cookie = name + "=;expires=Thu, 01 Jan 1970 00:00:00 GMT";
}
}
然而,一旦這個過程中運行還是有一個名爲ASP.NET_SessionID的cookie是由ASP.NET創建。爲了克服這個問題我設置基本上存儲會話ID在URL中的web.config文件中的以下內容:
<sessionState regenerateExpiredSessionId="true" cookieless="true" />
我的問題是,當我設置cookie的=「真」的使用JavasScript上面的代碼不會刪除我的任何餅乾,就像它變得多餘。當我設置cookieless =「false」時,javascript完美地工作。是否還有其他設置需要更改才能使兩者協同工作?
感謝
這個cookie在關閉瀏覽器或所有頁面時會自動刪除,因爲是會話cookie(它僅適用於當前會話)。所以不要擔心。您可以設置會話狀態cookie到期的時間。 – Aristos 2012-04-18 13:53:28