我正在開發一個JavaEE Web套接字項目,用於與android移動設備建立web套接字連接。 在我的項目中,我需要記住服務器端連接的客戶端的web套接字會話。在JavaEE中管理陳舊的Web套接字會話
如果手動客戶端手動斷開連接,他的會話將從我的會話映射中刪除,所以沒有問題,但是如果web套接字連接被取消但是發出的wifi比服務器沒有收到套接字關閉請求,因此會有在會話映射中陳舊的網絡套接字會話。 我的問題是如何知道會話圖中的會話是否處於活動狀態,在這種情況下。
我試過的是我嘗試從會話映射中使用會話對象ping客戶端,但它始終向我發送pong消息,或者不是客戶端處於活動狀態。用好的建議幫助我。
如果您的移動應用程序需要連接,那麼你聽HttpSessionListener。在30分鐘內(httpsession的超時),如果客戶端沒有發生任何活動,httpsession將被銷燬。那時你可以從緩存中刪除你的websocket。希望它有幫助 –