Javascript AJAX刷新-仅在更改时更新,有好的解决方案吗?

Javascript AJAX刷新-仅在更改时更新,有好的解决方案吗?,javascript,jquery,ajax,http,Javascript,Jquery,Ajax,Http,我越是使用AJAX,就越会发现自己面临同样的问题:我希望屏幕上的数据尽可能最新,但每秒下载相同的数据就太麻烦了。数据可能仅每30分钟更改一次,但如果更改,我希望立即将其反馈给用户 让我的服务器端脚本返回描述先前数据之间差异的数据可能是一个不错的解决方案,但并不总是可行的 是否有一个简洁的解决方案,或者这只是我不得不面对的问题?您必须每次查询服务器,这是一个给定的问题。您可以在服务器中测试是否有任何新数据要更新,如果没有,只返回类似“false”的内容,这样回调就不会做任何事情,每次传递的数据也会

我越是使用AJAX,就越会发现自己面临同样的问题:我希望屏幕上的数据尽可能最新,但每秒下载相同的数据就太麻烦了。数据可能仅每30分钟更改一次,但如果更改,我希望立即将其反馈给用户

让我的服务器端脚本返回描述先前数据之间差异的数据可能是一个不错的解决方案,但并不总是可行的


是否有一个简洁的解决方案,或者这只是我不得不面对的问题?

您必须每次查询服务器,这是一个给定的问题。您可以在服务器中测试是否有任何新数据要更新,如果没有,只返回类似“false”的内容,这样回调就不会做任何事情,每次传递的数据也会减少。

Nodejs和Socket.io。它的工作原理完全不同。在您的解决方案中,每个打开的窗口都会向服务器发送一个请求,因此会有大量无用的请求。带有Sokcet.io的Nodejs是一个真正的推送引擎。您可以通过套接字连接用户,并推送他们通知页面应刷新或更新数据本身


和链接。

您正在寻找comet或长轮询技术。下面是一个大致的描述和一个很好的解释:
此外,cometd网站将与jquery或dojo一起使用: 我

另一种解决方案是大气:
这里也有: