登入過期--localStorage加sessionStorage實現7天登入過期
localStorage實現7天登入過期
實現原理:存localStorage比較初始登入時存在快取的時間戳和現在進入頁面的時間戳,然後用sessionStorage去判斷不勾選但是登入了的狀態
精簡版
function isPastDue() {
// 過期時間7天
var time = 604800000; //1000*60*60*24*7;
var storage = window.localStorage;
var oldTimestamp = storage.getItem('timestamp');//以前存的時間戳
if (oldTimestamp){
var nowTimestamp = new Date().getTime();//當前時間戳
// 如果當前時間戳> 前面存的時間戳+過期時間 表示已經過期
var sumTimestamp = timestamp + time;
if (nowTimestamp > sumTimestamp) {
storage.clear();
}
}
}
完整版:
//1、點選了登入成功後的回撥函式裡
var localStorage = window.localStorage;
var sessionStorage = window.sessionStorage;
var userInfo = res.data.data[0];
if(that.checkBox){//如果勾選了7天
localStorage.setItem("timestamp", new Date().getTime());
sessionStorage.setItem('greenPath',1);
}else{
sessionStorage.setItem('greenPath',0);
}//2、在main.js的router.beforeEach裡
// 7天登入
function isPastDue() {
// 過期時間7天
var time = 604800000; //1000*60*60*24*7;
var storage = window.localStorage;
if (storage.getItem('timestamp')){
var oldTimestamp = storage.getItem('timestamp');//以前存的時間戳
var nowTimestamp = new Date().getTime();//當前時間戳
// 如果當前時間戳> 前面存的時間戳+過期時間 表示已經過期
var sumTimestamp = oldTimestamp + time;
if (nowTimestamp > sumTimestamp) {
storage.clear();
}
}else{
if (sessionStorage.getItem('greenPath')==0) {
return false;
}else{
storage.clear();
}
}
}
相關文章
- JWT過期,修改密碼,登出登入如何處理JWT密碼
- 在session過期後如何跳轉到登入頁面Session
- localstorage實現帶過期時間的快取功能快取
- localStorage設定過期時間
- Oracle預警使用者登入鎖定、過期及其審計資訊Oracle
- 【SSO】--實現單點登入研究過程總結
- 通過selenium突破極驗驗證實現登入
- jmeter通過cookies來登入JMeterCookie
- origin登入密碼不正確或已經過期怎麼辦 origin登入密碼錯誤怎麼解決密碼
- 密碼過期引起的ssh無法登陸密碼
- jwt加meta元資訊實現登入後校驗JWT
- 教程:已在其地方登陸或會話已過期,請重新登陸會話
- Laravel 通過 cookie 實現基於 session 的單點登入LaravelCookieSession
- 使用filter_var()過濾表單,實現laravel登入介面FilterLaravel
- vue通過vue-router攔截實現登入驗證Vue
- Vue.js實現一個SPA登入頁面的過程Vue.js
- Oracle 11g通過wallet實現無密碼登入Oracle密碼
- 【網頁登入】QQ 登入、微信登入、微博登入、GitHub 登入網頁Github
- MYSQL 連線登入過程分析MySql
- 如何給localStorage設定一個過期時間?
- Next.js-Cookie鑑權+續期+退出登入JSCookie
- 通過CiscoSDM登入思科路由器路由器
- 透過TRIGGER限制IP登入
- 怎麼實現谷歌登入?谷歌
- 【Java】——模擬登入實現Java
- SSH 實現免密登入
- 實現登入url跳轉
- Laravel5.6 實現第三方登入 微信登入Laravel
- linux伺服器的一些配置(密碼過期策略、登入次數限制、私鑰登入等)Linux伺服器密碼
- elasticsearch加賬號密碼登入Elasticsearch密碼
- sql 注入越過登入驗證例項SQL
- 命令繞過寶塔皮膚強制登入
- 【SSO】--單點登入之過濾器(filter)過濾器Filter
- iOS 支付前登入要有跳過選項iOS
- Java Servlet session實現登入退出JavaServletSession
- 網站登入JWT的實現網站JWT
- Vue+Express實現登入,登出VueExpress
- 使用CAS實現單點登入