¿Cómo caducar una cookie en 30 minutos usando jQuery?

121

¿Cómo caducar una cookie en 30 min? Estoy usando una cookie jQuery. Puedo hacer algo como esto.

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

Esto es por 1 día. Pero, ¿cómo podemos establecer el tiempo de caducidad en 30 minutos?

bluwater2001
fuente

Respuestas:

235

30 minutos son 30 * 60 * 1000milisegundos. Agregue eso a la fecha actual para especificar una fecha de vencimiento de 30 minutos en el futuro.

 var date = new Date();
 var minutes = 30;
 date.setTime(date.getTime() + (minutes * 60 * 1000));
 $.cookie("example", "foo", { expires: date });
Sinan Ünür
fuente
6
También para trabajos para la nueva encarnación: js-cookie
cssyphus
4

Si está utilizando jQuery Cookie ( https://plugins.jquery.com/cookie/ ), puede utilizar el punto decimal o fracciones.

Como es un día 1, sería un minuto 1 / 1440(hay 1440 minutos en un día).

Así que 30 minutos es 30 / 1440 = 0.02083333.

Código final:

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

Lo agregué path: '/'para que no olvide que la cookie está configurada en la ruta actual. Si estás en /my-directory/la cookie solo se configura para este mismo directorio.

Yvan
fuente
0

Tuve problemas para que el código anterior funcionara dentro de cookie.js. El siguiente código logró crear la marca de tiempo correcta para la expiración de la cookie en mi instancia.

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

Esto fue de las preguntas frecuentes sobre Cookie.js

Terry Carter
fuente