我正在为我的网站创作一个私人杂物功能,是否有一种方法可以从服务器中获取推送通知,并且用户已经收到了一条新消息?

我知道的唯一技术是通过 ajax 不断轮询服务器以查看是否有新消息,并在需要时重新加载消息窗口。

感谢您的任何反馈!

更新:到目前为止,已经确定了以下方向:

1) 彗星
2) 博世 - 通过同步 HTTP 的双向流
3) XMPP - 这就是 google talk 的基础

有帮助吗?

解决方案

您可能想看看XMPP和BOSH。非常像彗星和ejabberd nginx的能保持连接的1000的一个非常小方块组合。

看看我的项目 www.vooices.us 之一,看看我们与XMPP和做BOSH。

http://www.ejabberd.im/

http://github.com/ssoper/jquery-bosh/tree/master JQueryBosh - 使通过HTTP

有relativly容易设置和安装。

保罗。

其他提示

有没有什么办法让服务器将信息推送给客户,但你总是可以使用的彗星。是的,你会轮询服务器,但不经常。你会保持每个连接开放约30秒(这是我一直这么用的时间间隔),然后在需要时打开一个新的连接。

编辑:的Adobe Flash允许服务器持续连接,所以你可以使用它。请参阅此文章的信息。

听起来 Comet 可能链接到一些有用的东西(看看 Google 的 GTalk):

http://alex.dojotoolkit.org/2006/02/what-else-is-burried-down-in-the-deeps-of-googles-amazing-javascript/

有很多好的库,帮助你做到这一点。

XMPP - 波什,我在我的网站上使用一个很好的结合

XMPP服务器

Ejabberd,的Openfire我使用ejabberd

您可以使用的strophe与Ejabberd一起捕捉到通知中的JavaScript。如果你想发送的代码通知

有像JAXL和XMPPHP库,让你这样做,但是这是在PHP。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top