作者Arim (Arim5566)
看板Ajax
標題[問題] 如何判斷使用者有沒有在線上
時間Wed Apr 30 14:22:39 2014
各位板友好
我想設計一個聊天室,當使用者登入的時候,會顯示在線上
但是當使用者關閉分頁的時候,就會顯示離線...
請問這個應該要找什麼關鍵字,可以怎麼做?
謝謝
--
~宅男的四個徵兆~
∠□ ○ ! * \○/ ★ (○ ?
╦╦└□ " ○□═ □ □>
║║√√ ╦══╦ ∥ |\
一回家就上PTT 每天想正妹 以當好人為樂 忘記正妹虧欠自己
--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 140.117.169.133
※ 文章網址: http://webptt.com/m.aspx?n=bbs/Ajax/M.1398838963.A.ACE.html
1F:推 mrbigmouth:你聊天室是怎麼連接server的? 04/30 14:32
2F:→ mrbigmouth:如果是websocket這種常駐連接就直接抓斷線event 04/30 14:33
3F:→ mrbigmouth:不然就只能一段時間內未傳訊息視為離線了 04/30 14:33
4F:→ tooto1985:純前端無法,請搭配後端! 04/30 15:52
5F:推 mrbigmouth:樓上 沒有純前端聊天室這種東西吧!?!?!? XDDDDD 04/30 17:08
6F:→ mrbigmouth:(你是自己跟自己聊天嗎?XD) 04/30 17:08
7F:→ tooto1985:我是說純前端無法做線上人數統計 XD 04/30 18:10
8F:推 cleanwind:不考慮效能的話,每 15 秒寫一次時間,超過 30 秒沒回應 04/30 21:18
9F:→ cleanwind:即視為下線。 04/30 21:18
10F:推 banjmin:我覺得polling的方式不是很好 應該有event driven的方法 04/30 22:25
11F:→ banjmin:不然聊天室的話 我之前有用firebase玩過 你可以看看他API 04/30 22:25
12F:推 tooto1985:看後端是什麼平台? 解決方案各有不同! 04/30 23:39
13F:→ danny8376:polling的方式當然不理想 不過不是所有後台都有得選 05/01 00:54
14F:推 shaopin:找socket.io 05/01 04:30
15F:→ shaopin:如果你要做聊天室 就專注在聊天室的功能 05/01 04:31
16F:→ shaopin:如果你要研究server side push 才繼續去看websocket, long 05/01 04:31
17F:→ shaopin:poll 這些東西 05/01 04:31
18F:→ shaopin:純前端當然有辦法, 辦法就是用third party cloud service 05/01 04:33
19F:→ shaopin:請google firebase, pubnub這些詞..或是用google channel 05/01 04:33
20F:→ danny8376:使用者關閉分頁的時候,就會顯示離線 <= push 05/01 05:09
補充一下,我是用 websocket,只是想知道如果是其他方法的話可以怎麼做
※ 編輯: Arim (114.39.57.46), 05/01/2014 09:09:51
21F:→ danny8376:非websocket的話就上面說的定時check了 05/01 17:10
22F:→ danny8376:不過上面提到的socket.io不錯 非websocket都幫你包的 05/01 17:11
23F:→ danny8376:像socket一樣來用了 05/01 17:11
24F:推 mrbigmouth:socket.io後端限用node.js 不然用firebase等是不錯解 05/02 10:44
25F:→ mrbigmouth:但我不會說你用了firebase就叫純前端XD 你只是用別人的 05/02 10:45