实现实时UI更新的最佳方式,如SO的“新答案”通知程序?

时间:2008-12-24 17:59:41

标签: asp.net ajax user-interface

在Web应用程序中提供实时UI更新的建议模式是什么?例如,在回答SO上的问题时,另一个用户提交答案并出现提示。此外,如果站点中的每个页面都提供此功能,那么如何避免使用过多的AJAX调用来重载服务器?

2 个答案:

答案 0 :(得分:4)

只需运行计时器并通过XmlHttpRequest轮询服务器。这不像你需要即时更新; AFAIK,SO以30秒的间隔轮询,但这对我来说太慢了,所以我每隔15秒就会安装一个Greasemonkey脚本进行检查。

答案 1 :(得分:2)

我认为使用Comet是一种方法。(Comet Info herehere

使用Comet,您可以在收到信息时推送答案或服务器上的任何信息,这样您就不会每隔X次从客户端请求信息。

但作为一个缺点,tvanfosson和Josh让我注意到,它将使HTTP连接在客户端读取状态下长时间被阻止。