2010-03-16 251 views
5

用GWT創建JS聊天客戶端的最佳方式是什麼?我遇到的問題是消息的持久性和傳輸。我應該將消息存儲在數據庫中並檢查數據庫中的新消息嗎?有沒有更好的方法來做到這一點?與GWT聊天客戶端

回答

3

像扎哈建議,你一定要使用彗星/服務器推送/反向AJAX /許多其他名字。我編寫了GWT的選項another post

如果您想快速入門,請查看NGiNX_HTTP_Push_Module - 他們有一個易於理解的聊天示例。你必須自己寫一些處理協議,但這是一個相當簡單的任務。

如果您在後端也使用Java,則更簡單的解決方案將是rocket-gwtcometd

+0

謝謝!我會研究這個 - 服務器推/什麼看起來完美,我想要完成。 但是還有一件事,如果你仍然在這裏:我應該如何將消息存儲在服務器之間的發送和接收之間? – 2010-03-16 21:39:56

+1

就像jah建議的那樣 - 使用一個簡單的類,可能只與getter和setter對應。您可能還想查看JavaScript Overlay Objects,以便更輕鬆地處理來自服務器的JSON響應:http://code.google.com/webtoolkit/doc/latest/DevGuideCodingBasicsOverlay.html – 2010-03-16 22:54:35

+0

順便說一句,你知道這是否可以工作在Google App Engine上?謝謝! – 2010-03-20 23:23:54

2

你既可以有連接的客戶端不斷地輪詢新郵件的服務器,或者你可以看看服務器推送: http://code.google.com/p/google-web-toolkit-incubator/wiki/ServerPushFAQ

+0

Thanks.Should我使用數據庫? – 2010-03-16 21:27:38

+1

不,沒有任何需要 - 除非您想在服務器上保留某種聊天記錄。 – jah 2010-03-16 21:30:01

+0

對不起,我很困惑(GWT也是新手)。我應該只使用標準的數據結構,然後存儲消息? – 2010-03-16 21:31:28