Comment faire expirer un cookie en 30 min? J'utilise un cookie jQuery. Je suis capable de faire quelque chose comme ça.
$.cookie("example", "foo", { expires: 1 });
C'est pour 1 jour. Mais comment fixer le délai d'expiration à 30 min.
Comment faire expirer un cookie en 30 min? J'utilise un cookie jQuery. Je suis capable de faire quelque chose comme ça.
$.cookie("example", "foo", { expires: 1 });
C'est pour 1 jour. Mais comment fixer le délai d'expiration à 30 min.
Réponses:
30 minutes correspondent à des 30 * 60 * 1000
millisecondes. Ajoutez-le à la date actuelle pour spécifier une date d'expiration 30 minutes plus tard.
var date = new Date();
var minutes = 30;
date.setTime(date.getTime() + (minutes * 60 * 1000));
$.cookie("example", "foo", { expires: date });
Si vous utilisez jQuery Cookie ( https://plugins.jquery.com/cookie/ ), vous pouvez utiliser un point décimal ou des fractions.
Comme un jour est 1
, une minute serait 1 / 1440
(il y a 1440 minutes dans une journée).
Donc 30 minutes, c'est 30 / 1440 = 0.02083333
.
Code final:
$.cookie("example", "foo", { expires: 30 / 1440, path: '/' });
J'ai ajouté path: '/'
pour ne pas oublier que le cookie est défini sur le chemin actuel. Si vous êtes sur, /my-directory/
le cookie n'est défini que pour ce répertoire.
J'ai eu des problèmes pour faire fonctionner le code ci-dessus dans cookie.js. Le code suivant a réussi à créer l'horodatage correct pour l'expiration du cookie dans mon instance.
var inFifteenMinutes = nouvelle date (nouvelle date (). getTime () + 15 * 60 * 1000);
Cela provenait de la FAQ de Cookie.js