2013-04-07 89 views
0

我正在写一个简单的聊天客户端(完全用于学习目的)。我的android手机将消息发送到远程MySQL数据库,并且我正在让浏览器显示任何新的传入消息。我应该使用ajax更新聊天客户端中的消息吗?

我目前的做法是使用javascript:它调用一个函数每5秒,这反过来又调用查询新邮件,并将其发送回浏览器一个PHP。

我在阿贾克斯的经验,但我听说这是很好当数据在网页中经常发生变化,而无需刷新页面,这适合我的情况。

我的问题是,这听起来像什么,我应该使用AJAX的呢?

+0

答案你想找的是肯定的 – 2013-04-07 23:13:30

+1

肯定的,除非你不介意学习的WebSockets – 2013-04-07 23:16:35

+1

和/或websockets,long-polling,... – djot 2013-04-07 23:17:07

回答

1

是,AJAX是要走的路。但是,您提出的建议(每5秒检查一次消息)会生成很多请求和带宽。你应该看看彗星,它仍然是阿贾克斯,但以不同的方式使用它。

彗星基本上是这样的:客户端向服务器发送请求。服务器上的php文件每隔几秒就会有一个循环检查消息。当服务器发现消息时,它是消息,但它不关闭连接。当另一条消息到达时,它再次echo,但不关闭连接。这使它只需要1个请求而不是数百个。见http://www.zeitoun.net/articles/comet_and_php/start

0

我会建议你去ajax或websockets ...如果你要为websocket,学习node.js ...它有很多很酷的功能,因为平台建立在谷歌Javascript V8发动机

-1

http://www.zeitoun.net/articles/comet_and_php/start

查看此页面,日子会把你了解一切...;)

+0

[在堆栈溢出时不鼓励链接回答](http://meta.stackexchange.com/questions/65277/are-link-only-answers-poor-practice)。请将相关信息添加到您的答案中。 – Chris 2014-04-20 19:19:44

相关问题