ConverseJS Openfire重新登录问题(错误请求400)

时间:2017-10-10 17:32:15

标签: http openfire strophe bosh converse.js

我在聊天应用程序中使用openfire和converseJS。我在开头打电话给converse.initialize({ parameters}),聊天工作正常。但是当我退出时,我打电话给

_converse.api.user.logout();

然后当我再次登录时,我再次致电converse.initialize({ parameters})。 那引发了一个错误

POST http://server.url:7070/http-bind/ 400(错误请求) 错误,因此无法登录。

我在两种情况下调用的initialize方法的完整参数列表如下:

converse.initialize({
    bosh_service_url: url,//url passed from top
    jid:userId,//userId passed from top
    password: password,// password passed from top
    message_archiving:'always',
    keepalive: true,
    message_carbons: true,
    play_sounds: false,
    roster_groups: true,
    show_controlbox_by_default: false,
    xhr_user_search: false,
    auto_away: 900,
    auto_xa: 1800,
    auto_reconnect : true,
    auto_login: true,
    storage:'session',
    use_vcards:false,
    whitelisted_plugins: ['converse_plugin']
});

让我知道它出了什么问题。非常感谢您的帮助!!

1 个答案:

答案 0 :(得分:1)

converse.initialize只应在每次加载时调用一次。

如果您想在注销后再次登录,可以拨打_converse.api.user.login()

请查看此处的文档:https://conversejs.org/docs/html/developer_api.html#login

    this._converse.api.user.login({
        'jid': 'dummy@example.com',
        'password': 'secret'
    });