0

Converse.js 成功向 Prosody bosh 发出请求,但聊天客户端从未真正连接。在控制台中,我可以看到它到达了 bosh 端点,并在每次请求后输出到控制台:

"服务器尚未提供支持的身份验证机制。发送空白轮询请求。 "

我也可以从浏览器访问 bosh 端点,代理通道似乎按预期工作,并且 bosh 正在运行并响应请求。

非常感谢任何见解。

4

2 回答 2

1

错误信息非常清楚。Prosody 不提供 Converse 支持的 SASL 身份验证机制。

默认情况下,匡威支持 SCRAM-SHA1、DIGEST-MD5 和 PLAIN。

您的 XMPP 服务器需要支持其中之一。

于 2018-11-22T09:07:08.907 回答
1

我在使用整页演示时也遇到了这个问题。问题是因为 Prosody 只为客户端强制加密身份验证。

我建议进入配置文件 /etc/prosody/prosody.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

保存并重新启动 Prosody

systemctl restart prosody

你也可以

prosodyctl restart
于 2018-12-24T14:57:53.223 回答