[問題] WebSocket 實作跨站上下線功能問題(已解)

作者: biobluesheep (喉嚨痛)   2017-07-25 12:02:01
各位先進好,
目前用WebSocket實作使用者跨站上下線遭遇一個問題:
A:網站前台 用session判斷使用者是否在線
B:網站後台 接收socket訊息作資料更新
C:WebSocket Server AB訊息中繼
需求為以不使用DB,前台無法使用ajax讓Socket連線常駐的前提下,
前台有會員上下線時後台必須有實時通知。
目前實作上唯一的問題為無從判斷使用者到底是刷新頁面或是關閉瀏覽器,
例如:使用者連續點擊不同頁面造成page reload,後台會不斷收到上下線通知,
關閉瀏覽器目前可正常判斷使用者下線。
不知各位前輩是否可提供思路,感謝各位。
作者: LaPass (LaPass)   2017-07-25 12:34:00
你的要求,正解是把整個網站改寫為one page網頁。偏門解法是,後端當有人下線時,先等十秒鐘,沒再次上線才視為下線。
作者: pm2001 (做個盾牌眼球兵吧)   2017-07-26 00:13:00
不用DB 那改寫實體檔案阿

Links booklink

Contact Us: admin [ a t ] ucptt.com