84669 人學習
152542 人學習
20005 人學習
5487 人學習
7821 人學習
359900 人學習
3350 人學習
180660 人學習
48569 人學習
18603 人學習
40936 人學習
1549 人學習
1183 人學習
32909 人學習
重复登录怎么解决比如两台设备同时登录一个账号
认证高级PHP讲师
解決方案有兩類,第一類是主動式的,當你第二個客戶端登陸時,通知第一個客戶端退出登陸,這種需要客戶端與服務端長連結。 第二類是被動式,客戶端登陸時會獲取一個token,之後每次操作都帶上token,當每次登陸時會更新token,由此,當第二個登陸時,第一個登陸的token將會失效,此時退出登陸
可以整合第三方如環信,有重複登入踢出功能,不過如果只是為了這個功能倒沒必要,還是透過和介面設計吧
如果是做聊天得話 那就是長連接,伺服器可以主動去斷開用戶的連接。和QQ一樣如果只是普通的功能來說的,都是透過token的方式去擠掉對方的下線,但是這個必須要請求網路介面才會有作用,一般介面設計,每個請求head中都帶來token訊息,但你也可以透過推播訊息直接傳送給客戶端,去做下線的提示。
如果是自己做的話使用自定義的消息通知,當一個帳號已經登陸,另一個設備再次登陸該帳號時,讓伺服器發送通知給第一個設備,設備接收到通知後可以進行退出. 如果是使用第三方即時通訊就比較簡單了,帳號被登陸後即時通訊會有一個監聽方法,在該方法中進行操作就行了
一般不允許一個帳號在兩台手機登錄,除非有特殊需求,你可以過去手機設備參數進行唯一驗證,作為帳號參數
需要服務端同學做限制
解決方案有兩類,第一類是主動式的,當你第二個客戶端登陸時,通知第一個客戶端退出登陸,這種需要客戶端與服務端長連結。
第二類是被動式,客戶端登陸時會獲取一個token,之後每次操作都帶上token,當每次登陸時會更新token,由此,當第二個登陸時,第一個登陸的token將會失效,此時退出登陸
可以整合第三方如環信,有重複登入踢出功能,不過如果只是為了這個功能倒沒必要,還是透過和介面設計吧
如果是做聊天得話 那就是長連接,伺服器可以主動去斷開用戶的連接。和QQ一樣
如果只是普通的功能來說的,都是透過token的方式去擠掉對方的下線,但是這個必須要請求網路介面才會有作用,一般介面設計,每個請求head中都帶來token訊息,但你也可以透過推播訊息直接傳送給客戶端,去做下線的提示。
如果是自己做的話使用自定義的消息通知,當一個帳號已經登陸,另一個設備再次登陸該帳號時,讓伺服器發送通知給第一個設備,設備接收到通知後可以進行退出.
如果是使用第三方即時通訊就比較簡單了,帳號被登陸後即時通訊會有一個監聽方法,在該方法中進行操作就行了
一般不允許一個帳號在兩台手機登錄,除非有特殊需求,你可以過去手機設備參數進行唯一驗證,作為帳號參數
需要服務端同學做限制