2011-10-24 11 views
14

Qualcuno potrebbe aggiornare il codice seguente per far scadere il cookie in 30 secondi.Fare scadere un cookie in 30 secondi

function setCookie(c_name, value, exdays) { 
    var exdate = new Date(); 
    exdate.setDate(exdate.getDate() + exdays); 
    var c_value = escape(value) + ((exdays == null) ? "" : "; expires=" + exdate.toUTCString()); 
    document.cookie = c_name + "=" + c_value; 
} 
+3

Allora ... hai fatto un copia/incolla off w3schools ... Quirksmode ha una spiegazione migliore dei cookie in JavaScript: http://www.quirksmode.org/js/cookies.html – CD001

+0

Che cosa stai cercando di fare? Perché vuoi che scada così in fretta? –

+0

@Jason Potrebbero esserci delle volte in cui si desidera semplicemente passare i dati tra le pagine senza inviare tali informazioni sul filo. In casi del genere un cookie in scadenza rapida fa un buon lavoro. – TyMayn

risposta

29
function createCookie(name, value) { 
    var date = new Date(); 
    date.setTime(date.getTime()+(30*1000)); 
    var expires = "; expires="+date.toGMTString(); 

    document.cookie = name+"="+value+expires+"; path=/"; 
} 
+0

Perché stiamo usando toGMTString() in scadenza? C'è qualche ragione specifica? –

0

È possibile utilizzare max-age durante l'impostazione di un cookie, che si traduce in codice più semplice:

function setCookie(name, value, maxAgeSeconds) { 
    var maxAge = "; max-age=" + maxAgeSeconds; 
    document.cookie = encodeURI(name) + "=" + encodeURI(value) + maxAge; 
} 
Problemi correlati