简短: 是否有一种方法可以将数据从服务器推送到已登录的用户会话,而无需该用户发出HTTP请求?
Long(er): 我正在Apache / PHP / MySQL服务器上构建HTML5应用程序,可以将其提供给移动设备上的用户(或可能通过PhoneGap应用程序)。
我想让用户知道应用程序中何时有可用的新信息,而不会通过强迫该用户执行对服务器的调用或要求AJAX调用来增加过多的数据费用(是的,我知道它可以检查单个字节cookie,但我宁愿设为零)。
一个很好的例子是在两个用户之间提交聊天消息,然后从一个用户提交给另一个用户。
在现代浏览器,Websocket或较旧的浏览器中,“ 长期轮询 ”。还有一些库可以抽象其中的一部分(例如Comet)。
现在正在使用的一个非常常见的库socket.io可以自动连接可用的最佳技术,如果可用,则使用webSockets,如果不可用,则回退到其他技术,例如长轮询。
socket.io