第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

springboot 將session存redis 有個疑問

springboot 將session存redis 有個疑問

12345678_0001 2019-03-13 18:15:02
現(xiàn)在有點疑問:我將session存到redis中, 經(jīng)過測試同一臺電腦用不同瀏覽器訪問我的應用,會生成兩套sessionID。。這樣子怎么確定我賬號當前是哪個session,主要是想實現(xiàn)避免用戶重復登錄的情況。
查看完整描述

7 回答

?
斯蒂芬大帝

TA貢獻1827條經(jīng)驗 獲得超8個贊

兩個瀏覽器代表兩個不同的客戶端,當然會有兩個sessionId咯。
用戶重復登錄的問題可以通過注銷上一個登錄信息或者覆蓋上一個登錄的信息來解決。
由于http協(xié)議的無狀態(tài)性,服務器是沒法確定哪一個是你當前賬號的session的...
-重新讀了一遍問題,發(fā)現(xiàn)題主的意思應該是在服務器集群下如何使兩個服務器辨別同一個用戶才對,我覺得可以采用共同使用同一存儲中心的方式來完成。恩,對于redis了解不多,希望有大神來指正,小的不才,說錯勿怪。

查看完整回答
反對 回復 2019-04-19
?
揚帆大魚

TA貢獻1799條經(jīng)驗 獲得超9個贊

"實現(xiàn)避免用戶重復登錄"是什么意思?

我們假設你有如下場景:

  1. 電腦A登錄網(wǎng)站,因為cookie中沒有任何信息,所以需要登錄,登錄后服務器端生成一個sessionID,并返回給前端,瀏覽器記入cookie,下次再開這個網(wǎng)頁時,只要cookie沒過期,就會把sessionID傳給服務器,服務器憑此sessionID找到用戶信息,然后告訴前端已經(jīng)登錄過了可以反問登錄后的頁面/信息。

  2. 電腦B在電腦A登錄過之后,也去訪問網(wǎng)站,然后因為cookie中沒有任何信息,所以需要登錄,登錄后服務器端生成一個sessionID,并返回給前端,瀏覽器記入cookie。。。。一切如電腦A一樣。沒毛病

所以你的問題是?


查看完整回答
反對 回復 2019-04-19
?
holdtom

TA貢獻1805條經(jīng)驗 獲得超10個贊

spring security里面是通過用戶名的hash值來判斷是否是重復登錄的,可以配置禁止登錄還是踢出之前的登錄。
就是實現(xiàn)一個過濾器在做登錄驗證的時候進行判斷,可以參考security的實現(xiàn)方式。

查看完整回答
反對 回復 2019-04-19
?
三國紛爭

TA貢獻1804條經(jīng)驗 獲得超7個贊

比如登陸的話, 你會自己保存一些用戶信息到當前的session中,每次登陸的時候另開一條線程遍歷所有的session,通過userInfo里面的某一字段進行查找(比如username),存在兩條記錄以上就刪除的session即可.


查看完整回答
反對 回復 2019-04-19
?
泛舟湖上清波郎朗

TA貢獻1818條經(jīng)驗 獲得超3個贊

用常規(guī)辦法無法區(qū)分。
有人用flash本地通信的方式來解決此問題。

查看完整回答
反對 回復 2019-04-19
  • 7 回答
  • 0 關注
  • 1154 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網(wǎng)微信公眾號