首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >AJAX聊天无需定期刷新?

问AJAX聊天无需定期刷新?
EN

Stack Overflow用户
提问于 2013-04-18 05:45:25
回答 1查看 1.7K关注 0票数 2

我将要写一个基于ajax的聊天。刷新聊天框的最佳方式是什么?我知道可能性很小,但是哪一个最适合聊天呢?

附加:是否可以只重新加载未读文本?如果有人写了一个文本,刷新整个content.The是不必要的,新消息就足够了。但是用ajax和php能做到吗?我不知道怎么能做到这一点。所以我会很庆幸有个tipp ...谢谢!

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2013-04-18 06:37:57

刷新的频率和要刷新的内容的范围是独立的。使用AJAX,您可以询问服务器是否有新消息到达(基于时间戳),并且只将这些消息附加到已显示的内容中,而不必重新加载整个页面。

至于“定期刷新”的事情:你可以选择短轮询或长轮询。我认为所谓的“定期刷新”可能指的是短轮询。这基本上是一个计时器,例如,在JavaScript轮询服务器的每一秒中,是否有任何新的数据要显示。如果是,它发送它,否则回复一条消息,指示没有新的内容。

在长时间轮询时,服务器会被轮询,如果有新内容,它会给出新内容。但是,如果没有新内容,则不是立即回答“没有新内容”,而是保持连接打开,并在有要发送的内容时进行应答。这可以通过几种不同的方式实现,理论上可以提供更好的响应时间,但在实践中,如果以某种方式实现,可能会导致超时或服务器上的大量资源使用。

您可以在这里看到一个很长的轮询示例:http://www.screenr.com/SNH

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/16070804

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档