使用PHP / JavaScript将通知从服务器推送到用户

简而言之:有没有办法将数据从服务器推送到login用户会话,而无需用户发出HTTP请求?

Long(er):我正在Apache / PHP / MySQL服务器上构build一个HTML5应用程序,可以将这个应用程序提供给移动设备上的用户(或者通过PhoneGap应用程序)。

我希望让用户知道应用程序何时有新的信息,而不会通过强制用户执行对服务器的调用或需要AJAX调用来减less过多的数据费用(是的,我知道它可以检查单个字节cookie,但我宁愿让它为零)。

一个很好的例子就是发送两个用户之间的聊天消息,从一个用户提交给另一个用户。

在现代浏览器, Websockets或更旧的浏览器中,“ 长轮询 ”。 还有一些库可以抽象出一些(如彗星 )。

现在使用的一个非常常见的库是socket.io ,它可以自动连接到可用的最佳技术,使用webSocket(如果可用),并回退到其他技术(如不可用的长轮询)。

其他一些参考:

我如何实现基本的“长轮询”?

COMET(服务器推送到客户端)在iPhone上

更多关于长轮询

长轮询和使用Comet是否有区别?

用websockets推网页

哦HTML5,推送数据到我的手机

我推荐Socket.io

它利用

WebSocket,FlashSocket,HTML文件(用于IE),XHR长轮询,JSONP轮询

这是与Node.js ,这意味着它是在非阻塞的性质。

在实时function中,并发性是一个大问题

所以Node.js和Socket.io的非阻塞性质会帮助你

ScaleDrone允许您使用PHP API客户端从PHP推送到JavaScript。