2011-02-25 146 views
2

我正在运行openfire 3.6.4并与Strophe库连接。该设置工作正常。现在我想做一件事情,我想为我的应用程序进行匿名登录,登录也应该订阅一个房间并收到该房间的通知。我在openfire中启用了匿名设置。用Strophe匿名登录Openfire

回答

0

我做它通过改变strophe.js

找到:
if (Strophe.getNodeFromJid(this.jid) === null && do_sasl_anonymous) {

更改为:
if (Strophe.getNodeFromJid(this.jid) === '' && do_sasl_anonymous) {

通过改变从空到空JID节点的比较,我sumitting时候能以匿名方式进行身份验证时仅提交JID的域部分,仍然是能够与DIGEST认证完整的Jid和密码。

+4

在最新版本中,我不需要修改strophe。使用域名作为JID和空密码的窍门。 – 2011-11-21 16:17:59

3

首先,在空传递的用户名和密码,connect()使SASL匿名在的strophe:

connection.connect(null, 
        null, 
        onConnect); 

接下来,只需发送存在于房间@ conference_service /尼克:

var pres = $pres({to: '[email protected]_service/nick'}); 
connection.send(pres); 
+0

我做到了,我在连接上传递了空白的用户名和密码,但它得到终止 – jimy 2011-02-25 07:52:43

+0

并传递null它给了我<未授权/> – jimy 2011-02-25 08:31:24

+0

尝试发送连接中的服务器名称作为用户名,没有您的strophe.js MOD? – 2011-02-25 17:01:41

相关问题