2011-11-01 31 views
0

在過去的幾天裏,我一直在使用jQuery和PHP開發一個小型聊天客戶端。 到目前爲止,一切正常。我將每條消息保存到一個txt文件中,每個客戶端通過每隔1秒讀取一次該文件來更新他們自己的聊天窗口。在jQuery/php聊天客戶端中處理連接問題

我面對的問題是我不知道如何處理連接問題。例如,如果其中一個用戶關閉瀏覽器或關閉網頁會怎麼樣?處理這類問題的最好方法是什麼?

回答

1

您可以設置一個名爲last_access_time的時間戳,該時間戳將包含用戶最後一次訪問該頁面的時間,並且在每個頁面上(或者在某些批處理操作中),您可以檢查last_access_time超過5分鐘的所有用戶。所以現在你可以確定誰已經關閉了他們的窗戶。 每個用戶應該有一個last_access_time

+0

我理解這個概念,但這不是說如果客戶在聊天對話中關閉瀏覽器,另一個需要等待至少幾分鐘,直到他收到「連接丟失」消息? –

+0

是的,通常情況下,它就是這樣工作的。但是你也可以實現一些Ajax方法來向你的服務器發送一個'keepalive'消息(它爲那個客戶端更新'last_access_time'),所以在客戶端,你每3秒發送一次'keepalive',你可以現在檢查「last_access_time」少於3秒。現在你已經縮短了你的超時時間。 – 0xd

+0

現在非常感謝,我明白了。 –