亚洲乱码中文字幕综合,中国熟女仑乱hd,亚洲精品乱拍国产一区二区三区,一本大道卡一卡二卡三乱码全集资源,又粗又黄又硬又爽的免费视频

多端登錄如何實現(xiàn)踢人下線需求實現(xiàn)

 更新時間:2023年05月10日 17:27:37   作者:我是小趴菜  
這篇文章主要為大家介紹了多端登錄如何實現(xiàn)踢人下線的需求實現(xiàn)詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪

1:項目背景

 一個項目往往會有小程序,APP,PC等多端訪問,比如淘寶,京東等。這時候就會有一些踢人下線的需求,比如你在一臺電腦登錄了PC端,這時候你再另外一臺電腦也登錄PC端,這時候之前在另外一臺電腦上就會被強制下線。

或者你登錄了PC端,這時候你登陸了APP或者小程序,這時候PC端的賬號也會被強制下線

2:項目只有PC端

假設我們現(xiàn)在的項目只有PC端,沒有小程序或者APP,那么這時候就是很簡單了,用戶的sessin(也就是所謂的Token)一般都是存儲在redis中,session中包括用戶ID等一些信息,當然還有一個最重要的就是登錄的ip地址。

1:用戶在登錄的時候,從redis中獲取用戶session,如果沒有就可以直接登錄了

2:用戶在另外一臺電腦登錄,從redis中獲取到用戶session,這時候用戶session是有的,說明用戶之前已經登錄過了

3:這時候從用戶session中獲取IP,判斷二者的ip是不是相同,如果不同,這時候就要發(fā)送一個通知給客戶端,讓另外一臺設備登錄的賬號強制下線即可

3:項目有PC端和APP端和小程序端

當你的應用有PC端和APP端的時候,我們用戶的session如果還是只存一個ip地址,那明顯就是不夠的,因為很多情況下,我們PC端和APP端是可以同時登錄的,比如淘寶,京東等都是,也就是所謂的雙端登錄

這時候就會有多種情況

單端登錄:PC端,APP端,小程序只能有一端登錄

雙端登錄:允許其中二個端登錄

三端登錄:三個端都可以同時登錄

對于三端可以同時登錄就很簡單,但是現(xiàn)在有個限制,就是app端只能登錄一次,不能同時登錄,也就是我一個手機登錄了APP,另外一個手機登錄的話,之前登錄的APP端就要強制下線

所以我們的用戶session存儲的格式如下

{
   userId:用戶的id
   clientType:PC端,小程序端,APP端
   imei:就是設備的唯一編號(對于PC端這個值就是ip地址,其余的就是手機設備的一個唯一編號)
}

單端登錄

首先我們要知道,用戶登錄不同的設備那么用戶session是不一樣的。對于單端登錄,那么我們可以拿到用戶的所有的session,然后根據clientType和imei號來強制將其它端的用戶session刪除掉,然后通知客戶端強制下線

雙端登錄

同樣拿到所有用戶的session,然后根據自己的業(yè)務需求來判定哪一端需要強制下線,比如我們現(xiàn)在已經登錄了PC端和APP端,這時候登錄小程序,現(xiàn)在要讓APP端的強制下線。

這時候登錄之后獲取用戶所有的session,這時候會有二個用戶session,首先拿到clientType = APP的session,然后來通知客戶端這個端需要強制下線。

如果這時候我登錄了PC端和一個APP端,這時候我用另外一臺手機登錄APP端,那么之前那臺手機上登錄的APP端就要被強制下線,這個時候僅通過clientType是不行的,因為我二個手機登錄的clientType都是APP端。所以這時候就要根據imei號來判斷了。因為不同的手機imei號是不一樣的。

這時候我拿到用戶所有的session

  PC端的session
  sessionA{
      userId: 1,
      clientType: PC,
      imei: "123"
  }
  APP端的session
  sessionA{
      userId: 1,
      clientType: APP,
      imei: "12345"
  }

這時候我從另外一臺手機登錄的時候,生成的session應該是這樣的

 APP端的session
  sessionA{
      userId: 1,
      clientType: APP,
      imei: "1234567"
  }

我發(fā)現(xiàn)同一個clientType的session已經有了,這時候我要判斷imei號是否一樣,imei一樣說明是同一臺設備,不同說明不是同一臺設備,我們只需要把對應設備的賬號強制下線即可了

總結

不管是單端登錄,雙端登錄還是多端登錄,我們都是根據用戶session來判斷。只要根據clientType和imei號來就可以滿足我們大部分的踢人下線需求了。

以上就是多端登錄如何實現(xiàn)踢人下線需求實現(xiàn)的詳細內容,更多關于多端登錄踢人下線的資料請關注腳本之家其它相關文章!

相關文章

  • 解決HTTP服務響應數據不完整響應數據截斷的問題

    解決HTTP服務響應數據不完整響應數據截斷的問題

    這篇文章主要介紹了HTTP服務響應數據不完整響應數據截斷的問題及解決方法,本文給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2022-03-03
  • vscode使用restClient實現(xiàn)各種http請求的操作方法

    vscode使用restClient實現(xiàn)各種http請求的操作方法

    這篇文章主要介紹了vscode使用restClient實現(xiàn)各種http請求的操作方法,定義變量以及使用環(huán)境變量和返回數據作為變量的操作代碼,感興趣的朋友跟隨小編一起看看吧
    2024-02-02
  • 利用git克隆歷史版本(下載指定版本的代碼)

    利用git克隆歷史版本(下載指定版本的代碼)

    這篇文章主要介紹了利用git克隆歷史版本(下載指定版本的代碼),具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2023-05-05
  • 12種最常用的網頁編程語言簡介(值得收藏)

    12種最常用的網頁編程語言簡介(值得收藏)

    隨著網站的越來越普及,與Web相關的開發(fā)技術持續(xù)熱門,從開始簡單的html到復雜的web開發(fā)語言asp、asp.net、php、jsp等等,在此,我就借助SEO馬龍博客的平臺跟大家簡單的介紹一下常見的12種網頁編程語言
    2017-01-01
  • HTTP 2.0 詳細介紹

    HTTP 2.0 詳細介紹

    本文主要介紹 HTTP 2.0的知識,這里整理了詳細的資料,并對HTTP2.0的知識做了詳解,有需要的小伙伴可以參考下
    2016-09-09
  • 深入理解瀏覽器的各種刷新規(guī)則

    深入理解瀏覽器的各種刷新規(guī)則

    這篇文章給大家詳細介紹了PC瀏覽器的刷新方式,以及簡單的介紹了WISE瀏覽器的刷新方式,文章介紹的很詳細,有需要的朋友們可以一起來看看吧。
    2016-10-10
  • Git常用場景使用方法

    Git常用場景使用方法

    這篇文章主要介紹了Git常用場景使用,本文給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2020-08-08
  • git 配置多個SSH-Key實現(xiàn)示例

    git 配置多個SSH-Key實現(xiàn)示例

    這篇文章主要為大家介紹了git 配置多個SSH-Key實現(xiàn)示例詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪
    2023-07-07
  • 關于base64編碼的原理及實現(xiàn)方法分享

    關于base64編碼的原理及實現(xiàn)方法分享

    我們的圖片大部分都是可以轉換成base64編碼的data:image。 這個在將canvas保存為img的時候尤其有用
    2012-03-03
  • git-github 子模塊倉庫更新(git submodule)及git中submodule子模塊的添加、使用和刪除操作

    git-github 子模塊倉庫更新(git submodule)及git中submodule子模塊

    這篇文章主要介紹了git-github 子模塊倉庫更新(git submodule)/git中submodule子模塊的添加、使用和刪除,使用子模塊后,不必負責子模塊的維護,只需要在必要的時候同步更新子模塊即可,需要的朋友可以參考下
    2023-03-03

最新評論