У меня есть javascript, который проверяет объект в sessionStorage и использует его для пополнения поля ввода. Я использую это, чтобы помочь пользователям на моем сайте, если они оставляют незавершенную форму и либо перемещаются, либо пытаются отправить форму после истечения срока их работы.Когда сеансStorage фактически очищен?
Мое понимание заключается в том, что sessionStorage НЕ привязан к серверному сеансу, он связан с браузером, поэтому независимо от того, есть ли у меня новый сеанс на сервере или нет, не имеет значения.
Это было поддержано, когда я тестировал это первоначально несколько месяцев назад. Однако, похоже, это уже не так, и когда я очищаю свой cookie сеанса и перезагружаю свою страницу, мой сеанс хранения также очищается. Это использует как Chrome, так и Firefox.
Я не хочу использовать localStorage, поскольку это может вызвать проблемы с общими компьютерами, тогда как sessionStorage будет уничтожен при закрытии окон браузера.
JS, чтобы получить значение моего сохраненного объекта
JSON.parse(sessionStorage.getItem("draftPost") || null);
JS, чтобы сохранить значение
$("#wallText").on("change",function(){
sessionStorage.setItem("draftPost",JSON.stringify(draftPost));
});
Здесь подробно объясняется: https://html.spec.whatwg.org/multipage/webstorage.html#the-sessionstorage-attribute – Barmar
И кратко кратко изложено здесь: https://developer.mozilla.org/en -US/docs/Web/API/Window/sessionStorage – Barmar
На последней странице: ** Открытие страницы в новой вкладке или окне приведет к инициированию нового сеанса, который отличается от того, как работают cookie сеанса. ** – Barmar