2013-05-22 10 views
9

Desidero cancellare un cookie utilizzando javascript creato originariamente lato server. Ogni volta che creo un cookie utilizzando javascript ottengo un punto iniziale nel mio dominio, quindi non posso sovrascrivere il cookie del server.Cookie Javascript senza punto iniziale

function clearCookie(name, domain, path){ 
    var domain = domain || document.domain; 
    var path = path || "/"; 
    document.cookie = name + "=; expires=" + +new Date + "; domain=" + domain + "; path=" + path; 
}; 

clearCookie('cookieTime'); 

questo è il risultato del mio biscotto:

name: cookieTime 
domain: .www.currentdomain.com 
path:/

Questo è il cookie dal server:

name: cookieTime 
domain: www.currentdomain.com 
path:/

Come si crea un cookie js senza un punto iniziale?

+0

Vedere http://stackoverflow.com/questions/ 2285010/php-setcookie-domain – Mikhail

risposta

7

Come si può vedere here è possibile eliminare il punto iniziale semplicemente non impostando il dominio.

Inoltre, in considerazione è possibile aggiornare solo i propri cookie, in modo da sbarazzarsi del dominio nella funzione e aggiornare i cookie impostati dal server, come:

function clearCookie(name, path){ 
    var path = path || "/"; 
    document.cookie = name + "=; expires=" + new Date() + "; path=" + path; 
}; 

clearCookie('cookieTime'); 
+0

Funziona! Assicurati che la tua data di scadenza sia una stringa UTC/GMT. http://stackoverflow.com/questions/11136372/which-date-formats-can-i-use-when-specifying-the-expiry-date-when-setting-a-cook – aztack

Problemi correlati