Converse.js成功地向Probody-bosh发出请求,但聊天客户端从未真正连接。在控制台中,我可以看到它击中了bosh端点,在每次请求后,它都会输出到控制台:
">服务器尚未提供支持的身份验证机制。正在发送空白轮询请求。">
我也可以从浏览器中访问bosh端点,代理传递似乎按预期工作,并且bosh正在运行并响应请求。
任何见解都值得赞赏。
我在使用全页面演示时也遇到了这个问题。问题是因为Probody只强制客户端进行加密身份验证。
我建议进入配置文件/etc/proody/proody.cfg.lua
查找代码
-- Force clients to use encrypted connections? This option will
-- prevent clients from authenticating unless they are using encryption.
c2s_require_encryption = true
默认情况下,我将其设置为true,将其更改为false
c2s_require_encryption = false
保存并重新启动Probody
systemctl restart prosody
你也可以做
prosodyctl restart
错误消息非常清楚。Probody不提供匡威支持的SASL身份验证机制。
默认情况下,Converse支持SCRAM-SHA1、DIGEST-MD5和PLAIN。
您的XMPP服务器需要支持其中一个。