利用HttpSession記錄使用者的登陸次數

2021-08-13 03:35:51 字數 1108 閱讀 4464

場景:目前有兩種登入方式,首先是人臉認證登入,如果累計認證失敗三次,那麼就將頁面**到使用者名稱、密碼登入的方式,所以這裡就需要對當前使用者登入失敗的次數做統計,因為利用資料庫再去儲存這些資訊很麻煩,要修改使用者表的表結構,並且在達到峰值後需要清零,又要對資料庫進行讀寫操作,這裡使用httpsession實現該功能,具體**如下:

//使用者登陸介面登陸驗證成功將頁面重定向到主頁即可

}

以上記錄的主要是後台的記錄方式,在目前的專案中主要做的前台的判斷,所以在前端的也提供了一共解決方案(兩者不能共存!),前端主要針對的是ajax的請求的方式,所以在觸發ajax請求外的地方定義乙個變數來記錄即可,由於ajax是針對區域性重新整理的動作,所以無法定義所謂的全域性變數,只要把它定義到觸發ajax請求的事件之外即可,本人專案中的用法如下:

//對使用者認證次數統計

var count = 0;

//進行使用者人臉的認證

document.getelementbyid("rz").addeventlistener("click", function

() ,

function

(data)/index";

} else

if(data.result[0]<=80&&data.result[0]>0) else /login";

console.info("count=" + count);

}} else else /login";

console.info("count=" + count);

}}

},"json");

});

缺點:基於httpsession的方式簡單直接,但是在伺服器集群部署的情況下session共享的方式是不適用的,因為下次請求不知道會**到哪個機器上,此時cookie就發揮作用了

記錄HttpSession相關

httpsession的使用方法link。使用httpsession之後,我們知道相關的資料儲存到了redis中了。有時我們想登入redis中檢視相關的資料儲存情況。首先登入到redis中,輸入命令 都是以spring開頭 keys spirng 儲存 session 資料,資料型別hash,可以使...

HttpSession 資料同步

1 第一種方式,把物件的屬性定義為immutable,synchronized同步更新 public class highscore public playerscore gethighscore public void updatehighscore playerscore newscore or...

HttpSession理解學習

1 httpsession 在伺服器端保持http狀態的方案。和其對應的是cookie 2 產生httpsession物件的過程 當程式需要為某個客戶端的請求建立乙個session時,伺服器首先檢查這個客戶端的請求是否包含乙個session標識 即sessionid 如果已經包含乙個sessioni...