我正在开发一个基于php的网站。我想在其中实现Facebook聊天。
我的问题是我如何在BOSH中使用XMPP。什么是XMPP和BOSH的关系。
是否有任何示例源代码可以了解如何使用JAXL或strophe.js等库实现Facebook聊天
答案 0 :(得分:3)
我的问题是我如何在BOSH中使用XMPP。什么是关系 XMPP和BOSH。
BOSH代表http的双向流。它是一个用于通过HTTP运行XMPP的规范,但可用于通过http运行任何底层tcp级协议。
BOSH基本上在浏览器的限制范围内播放,即一次不能向特定域发出超过2个请求。在这些限制范围内,BOSH能够模拟服务器和客户端之间的完整双向管道。可以使用此虚拟管道传输有效负载,并且用户体验明智,它与实时一样好。
传统上,BOSH使用称为长轮询的技术进行模拟。但是,我已经成功地使用jsonp和websockets(如果可用)运行相同的。
是否有任何示例源代码可以了解如何实施Facebook 使用JAXL或strophe.js等库进行聊天
我打赌你会找到使用strophe.js的足够的网络聊天应用示例。您所需要的只是一个bosh连接管理器,如punjab或ebosh(我写的一个),它可以连接到任何xmpp / jabber c2s端点。
就JAXL示例而言,这里有一些你可以直接使用:https://github.com/abhinavsingh/JAXL/tree/master/app请特别注意boshchat.php,boshMUCchat.php和preFetchBOSH.php示例,这些示例演示了Jaxl库的BOSH端支持。
如果您期望中等流量,可以使用这些示例。对于基于流量的繁重应用,我会认真推荐使用基于strophe.js的解决方案。
答案 1 :(得分:0)