我看到许多网站(例如facebook或stack overflow)会在新数据生成时更新某些功能(例如帖子上的新答案)。
假设有一篇新文章被添加到博客中,有人正在博客中查看它,这个想法是自动将新文章添加到博客中,而不需要刷新或让用户做任何操作。
我想过每5秒左右执行一次AJAX调用,但这会向服务器发出太多请求,而且我看到我提到的网站(更新内容)没有发出任何新的请求。
我真的不知道如何做到这一点。这是可能的PHP和AJAX?我也听说过websockets。什么好主意吗?由于
问得好!有几个解决方案。
有一个相对较新的解决方案来调用websockets。它在HTML5标准中其他语言中也有很多库。
其中之一是套接字。IO (javascript) -它使您能够与服务器保持一致的低延迟连接,以便在生成信息时接收信息。服务器端也有很多php、c和python的插件。
举几个例子:libwebsockets (c++), pywebsockets (python)和jetty (javascript)
对于php: http://socketo.me/
访问此链接获取更多信息:http://www.html5rocks.com/en/tutorials/websockets/basics/
可以使用HTML5 SSE。但这不是一个很好的解决方案。
您可以使用Comet服务器来帮助长AJAX轮询。查看Ajax推送引擎(APE)。它是Comet Server和Javascript框架的结合,使AJAX-PUSH或实时流成为可能。
干杯!:)
可以帮助您这样做的框架的一个例子是SignalRhttp://signalr.net/
这是asp.net特有的
嗯,
如果你在PHP和开源世界,你可以考虑Node.Js, Socket。IO或NowJs
我在ASP。我喜欢SignalR