2012-02-27 18 views
5

Sto usando this jquery plugin per aggiungere con successo i cookie a un'applicazione jQuery Ajax su un sito web.jQuery cookie persistence

Ma, la mia domanda molto breve è, , come posso impostare il cookie per esistere indefinitamente?

Sto cercando di ricordare le impostazioni delle preferenze degli utenti memorizzandole a lungo termine in un cookie contenente una serie di dati univoci per ciascun utente.

Grazie.

+1

è possibile utilizzare localstorage per memorizzare i dati e inviarli come cookie quando lo si desidera. – deantoni

risposta

4

Non è possibile impostare un cookie per "non scadere", ma si può fare altrettanto bene.

Di solito preferisco impostare i cookie per 30 giorni e rinnovarli ogni volta che l'utente accede a una pagina. Finché l'utente non parte per un mese, il cookie è permanente.

1

Forse potresti provare a impostare l'opzione di scadenza su: 9999. Quale potrebbe essere una soluzione per te.

$.cookie('the_cookie', 'the_value', { expires: 9999 }); 

Ma non esiste un'opzione valida per infinito.

Basta provare a sperimentare con i valori. Ma è una buona idea salvarlo sui cookies? Perché se l'utente in qualche modo cancella i cookie ci sono andato comunque. Hai considerato di salvare le "proprietà" in un database?

15

Non è possibile impostare un cookie per esistere indefinitamente. Rendi persistente un cookie impostando una data di scadenza e, poiché la data di scadenza deve avere un valore specifico, è il momento in cui il cookie scadrà.

È possibile effettuare il cookie vivere per un anno, per esempio:

$.cookie('the_cookie', 'the_value', { expires: 365 }); 

È inoltre possibile utilizzare un oggetto Date per la data di scadenza, ma si dovrebbe mantenere la data da questa parte del 2038, come alcuni sistemi non supportano ancora le date successive.

+0

Sì, è quello che ho trovato dopo qualche ricerca su google - sfortunatamente. Grazie – sisko