Ho un javascript che controlla un oggetto in sessionStorage e lo utilizza per riempire un campo di input. Io lo uso per aiutare gli utenti del mio sito se lasciano il modulo incompiuto e si allontanano o cercano di inviare il modulo dopo che la sessione è scaduta.Quando sessionStorage viene effettivamente cancellato?
La mia comprensione è che sessionStorage NON è collegato a una sessione del server, è collegato al browser, quindi se ho una nuova sessione sul server o no è irrilevante.
Questo è stato supportato quando ho provato questo inizialmente alcuni mesi fa. Tuttavia, sembra che non sia più così, e quando svuoto il mio cookie di sessione e ricarico la mia pagina, anche il mio sessionStorage viene cancellato. Questo sta usando sia Chrome che Firefox.
Non voglio utilizzare localStorage in quanto ciò potrebbe causare problemi con computer condivisi, mentre sessionStorage verrà cancellato quando le finestre del browser saranno chiuse.
JS per ottenere il valore del mio oggetto memorizzato
JSON.parse(sessionStorage.getItem("draftPost") || null);
JS per salvare il valore
$("#wallText").on("change",function(){
sessionStorage.setItem("draftPost",JSON.stringify(draftPost));
});
È spiegato in dettaglio qui: https://html.spec.whatwg.org/multipage/webstorage.html#the-sessionstorage-attribute – Barmar
ed è riassunto brevemente qui: https://developer.mozilla.org/en -US/docs/Web/API/Window/sessionStorage – Barmar
Da quest'ultima pagina: ** L'apertura di una pagina in una nuova scheda o finestra causerà l'avvio di una nuova sessione, diversa da come funzionano i cookie di sessione. ** – Barmar