4

我正在尝试使用 strophe 插件在 openfire 服务器上注册一个新用户,但它没有连接注册。这里的描述https://github.com/metajack/strophejs-plugins/tree/master/register并没有让我更进一步:(我必须先建立连接吗?这是我在单击按钮时尝试的登记:

$("#RegButton").click(function () {
var callback = function (status) {
if (status === Strophe.Status.REGISTER) {
    connection.register.fields.username = "juliet";
    connection.register.fields.password = "R0m30";
    connection.register.submit();
} else if (status === Strophe.Status.REGISTERED) {
    console.log("registered!");
    connection.authenticate();
} else if (status === Strophe.Status.CONNECTED) {
    console.log("logged in!");
} else {
    // every other status a connection.connect would receive
}
};
connection.register.connect("http://localhost:7070/http-bind/", callback);
});
4

2 回答 2

4

在这条线上:

connection.register.connect("http://localhost:7070/http-bind/", callback);

connection应该是已使用您的服务 URL ( ) 创建的Strophe.Connection"http://localhost:7070/http-bind/"对象。

第一个参数connection.register.connect()是您要在其上注册帐户的主机。也就是说,对于user@example.com的 JID,您可以将其设置为"example.com",而不是"http://localhost:7070/http-bind/"像您的代码中那样。

于 2012-05-03T00:30:11.920 回答
4

就我而言,我修改了插件,因为在第 215 行“if(register.length === 0)”中,总是结束我的注册意图,所以我评论了这些行并删除了一个标签“x”,而不是引入我的节和登记册是可能的。我希望这对你有帮助。

    /*
      if (register.length === 0) {
        console.log('En tra if de linea 220');
        //that._changeConnectStatus(Strophe.Status.REGIFAIL, null);
        //return;
    } else */
    this.enabled = true;
于 2012-05-03T18:43:24.630 回答