2 votes

Comment mettre à jour la date d'expiration d'un cookie via jQuery ?

Je voudrais mettre à jour la date d'expiration d'un cookie via jQuery. J'utilise la fonction plugin cookie jQuery .

Voici le code que j'ai utilisé pour fixer la date d'expiration à 8 heures dans le futur :

var date = new Date();
date.setTime(date.getTime() + (8 * 60 * 60 * 1000));
$.cookie('myCookie', $.cookie('myCookie'), { expires: date });

Cela a créé un nouveau cookie avec le bon nom, mais les mauvais attributs :

  • Le nouveau cookie avait la valeur [object Object] à la place de la chaîne de cookie originale, délimitée par une esperluette, à valeur clé.
  • Pas d'indicateur SSL (sécurisé) dans le nouveau cookie (l'ancien cookie avait l'indicateur SSL activé)
  • L'expiration était fixée au moment où le navigateur était quitté, au lieu de 8 heures dans le futur.

Quelle est la manière correcte de mettre à jour uniquement la date d'expiration d'un cookie via jQuery ?

2voto

Alex Reynolds Points 45039

Cela semble fonctionner :

var date = new Date();
date.setTime(date.getTime() + (8 * 60 * 60 * 1000));
var myCookieValue = $.cookie('myCookie');
$.cookie('myCookie', null);
$.cookie('myCookie', myCookieValue, { expires:date, secure:true, path:'/' });

0voto

Baptiste Pernet Points 2057

Juste mes deux centimes : quel est votre cookie initial ?

J'essaie de reproduire votre problème avec un cookie qui est initialisé comme ceci :

$.cookie("myCookie", "myValue")

et ça a marché.

mais j'ai essayé avec un cookie qui est initialisé comme ceci :

$.cookie("myCookie", {myParameter: "myValue"})

Je ne pense pas que le plugin cookie jQuery soit conçu pour stocker des objets. Vous ne pouvez enregistrer qu'une valeur de type chaîne de caractères. $.cookie("myCookie") il retourne "[object Object]"

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X