Xmpp与Websocket

Xmpp与Websocket,第1张

Xmpp与Websocket

简短的答案是“两者”。

XMPP是用于进行实时聊天(以及许多其他事情)的一组应用程序协议-然后必须以某种方式在网络上进行传输,因此您需要进行传输绑定。XMPP有三种主要的传输绑定-

  1. TCP / IP,这是通常在Internet上与设备上的本机客户端一起使用的
  2. HTTP(称为BOSH),这是在浏览器中使用XMPP时通常使用的HTTP(因为浏览器中的Javascript应用程序无法使用TCP-IP)
  3. Websockets,这是在现代浏览器中执行XMPP时使用的一种。

因此,如果要在浏览器中开发聊天应用程序,则应选择XMPP作为应用程序协议,并使用websocket(在现代浏览器中)或BOSH(在较旧的浏览器中)作为网络传输。如果您使用Stanza.io(https://github.com/otalk/stanza.io)这样的Java脚本XMPP库,它将同时支持这两者,而您只是在考虑“
XMPP”,而不是传输层,除了在安装时,您必须告诉它要连接到哪个端点。

(您不能使用“仅websockets”进行聊天-您可以在不使用XMPP的情况下使用websockets,但这实际上意味着您正在发明自己的应用程序层协议进行聊天,而且很可能节省了通过利用已经编写好的具有有用属性(安全性,身份,可扩展性等)的工作而花费很多时间和头痛,而通过使用XMPP来为已有的库和服务器编写工作。



欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zaji/5428995.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-12-11
下一篇 2022-12-11

发表评论

登录后才能评论

评论列表(0条)

保存