Converse.js - Prosody не предлагает поддерживаемый механизм аутентификации

Converse.js успешно отправляет запросы в Prosody, но чат-клиент никогда не подключается. В консоли я вижу, как она попадает в конечную точку bosh и после каждого запроса выводит на консоль:

"Сервер еще не предлагал поддерживаемый механизм аутентификации. Отправка пустого запроса на опрос".

Я также могу подключиться к конечной точке bosh в своем браузере, похоже, что проход прокси работает должным образом, а bosh работает и отвечает на запросы.

Любое понимание очень ценится.

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

Сообщение об ошибке совершенно ясно. Prosody не предлагает механизм аутентификации SASL, поддерживаемый Converse.

По умолчанию Converse поддерживает SCRAM-SHA1, DIGEST-MD5 и PLAIN.

Ваш XMPP-сервер должен поддерживать один из них.

Другие вопросы по тегам