Come far scadere un cookie in 30 minuti usando jQuery?


121

Come far scadere un cookie in 30 minuti? Sto usando un cookie jQuery. Sono in grado di fare qualcosa di simile.

$.cookie("example", "foo", { expires: 1 });

Questo è per 1 giorno. Ma come possiamo impostare il tempo di scadenza a 30 min.

Risposte:


235

30 minuti sono 30 * 60 * 1000millisecondi. Aggiungilo alla data corrente per specificare una data di scadenza di 30 minuti nel futuro.

 var date = new Date();
 var minutes = 30;
 date.setTime(date.getTime() + (minutes * 60 * 1000));
 $.cookie("example", "foo", { expires: date });

6
Anche per i lavori per la nuova incarnazione: js-cookie
cssyphus

4

Se stai usando jQuery Cookie ( https://plugins.jquery.com/cookie/ ), puoi usare il punto decimale o le frazioni.

Come un giorno 1, un minuto sarebbe 1 / 1440(ci sono 1440 minuti in un giorno).

Quindi 30 minuti sono 30 / 1440 = 0.02083333.

Codice finale:

$.cookie("example", "foo", { expires: 30 / 1440, path: '/' });

Ho aggiunto in path: '/'modo da non dimenticare che il cookie è impostato sul percorso corrente. Se sei sul /my-directory/cookie è impostato solo per questa stessa directory.


0

Ho avuto problemi a far funzionare il codice precedente all'interno di cookie.js. Il codice seguente è riuscito a creare il timestamp corretto per la scadenza del cookie nella mia istanza.

var inFifteenMinutes = new Date (new Date (). getTime () + 15 * 60 * 1000);

Questo era dalle FAQ per Cookie.js

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.