4 回答

大寫的王
TA貢獻122條經(jīng)驗 獲得超162個贊
存一個時間戳字段到 db 中,一旦用戶有新的操作,類似刷新頁面,跳轉(zhuǎn)到其他頁面的時候,就更新這個字段。
判斷用戶是否在線的話,只需要查詢這個字段,然后比較當(dāng)前時間戳,可以設(shè)定一個值,例如5分鐘,如果差值小于5分鐘,則判斷用戶在線,否則則判斷用戶離線。
題主可以這樣來理解,當(dāng)用戶請求頁面后,后端響應(yīng)并把頁面發(fā)送過去,之后用戶和服務(wù)器之間是沒有一個所謂的連接狀態(tài)的,所以最方便的方法就是當(dāng)用戶做出一些活動時主動向后端發(fā)送消息,就相當(dāng)于告訴服務(wù)器,"hello, Im still alive"。但是實際上,你很難百分百做到獲取用戶的真實動作,例如瀏覽器意外關(guān)閉,網(wǎng)絡(luò)故障等等。
- 4 回答
- 1 關(guān)注
- 5244 瀏覽
添加回答
舉報
0/150
提交
取消