我构建了一个应用程序,在这个应用程序中,我将从服务器接收到的令牌保存到客户端的sessionStorage中。会话结束时间为30 30mnts。该应用程序在给定的场景中运行良好:
正确工作
但是,下面的场景没有正确地考虑分配给新窗口的新sessionStorage (不正确的行为):
发布于 2017-01-24 05:27:30
我所担心的是浏览器崩溃时,sessionStorage仍然存在。因此,我正在研究可以清除sessionStorage的修补程序,这是我在下面的代码片段中实现的:
window.addEventListener('load', function () {
sessionStorage.setItem('good_exit', 'pending');
setInterval(function () {
sessionStorage.setItem('time_before_crash', new Date().toString());
}, 1000);
});
window.addEventListener('beforeunload', function () {
sessionStorage.setItem('good_exit', 'true');
});
if(sessionStorage.getItem('good_exit') &&
sessionStorage.getItem('good_exit') !== 'true') {
/*
insert crash logging code here
*/
alert('Hey, welcome back from your crash, looks like you crashed on: ' + sessionStorage.getItem('time_before_crash'));
}详细信息,请参阅以下链接:http://jasonjl.me/blog/2015/06/21/taking-action-on-browser-crashes/
https://stackoverflow.com/questions/41739058
复制相似问题