websocket關於禁止一個賬號多窗口鏈接的問題


通過websocket的session.getSessionId()與oldSession.getSessionId()來equals判斷是否是新窗口。 如果不同不讓鏈接。

問題1.雖然新來的鏈接連不上,但是如果原窗口的鏈接斷線重連也會認為是新socket,也會被禁止鏈接。 

解決方法: 原窗口鏈接時,原客戶端窗口先發關閉請求, 然后再連即可連上。

問題2. 如果上面原客戶端窗口關閉請求服務端沒有收到怎么辦? (網絡情況很復雜) 

可以在onError和onClose中獲取到指定的oldSession,判斷isOpen(), 如果為false則說明已為僵屍鏈接,移除它即可。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM