得到SID &使用strophe.js的RID
Get SID & RID using strophe.js
如何获得SID &RID连接到使用strophejs的XMPP服务器时?我使用Ejabbered作为XMPP服务器。
我的代码
$(document).bind('connect', function (ev, data) {
var conn = new Strophe.Connection('http://localhost:5280/http-bind');
conn.connect(data.jid, data.password, function (status) {
if (status === Strophe.Status.CONNECTED) {
$(document).trigger('connected');
} else if (status === Strophe.Status.DISCONNECTED) {
$(document).trigger('disconnected');
}
});
Gab.connection = conn;
});
$(document).bind('connected', function () {
---------------------------------
---------------------------------
console.log(Gab.connection.jid); // Got jid
console.log(Gab.connection.rid); // Value is undefined
console.log(Gab.connection.sid); // value is undefined
});
我已经尝试了上面的代码。
我已经检查了这个问题,XMPP:检索BOSH会话ID和RID
但是在那里的注释中,'undefined'是结果!
通过向connection. xmloutput添加一个函数,我从strophe连接中获得RID和SID。这样就可以在发送出去的小节之前查看它们。下面是一个例子:
connection.xmlOutput = function (e) {
if (IS_CONNECTED) {
LAST_USED_RID = $(e).attr('rid');
LAST_USED_SID = $(e).attr('sid');
log(' XMLOUTPUT INFO - OUTGOING RID=' + LAST_USED_RID + ' [SID=' + LAST_USED_SID + ']');
//log(' XMLOUTPUT INFO - OUTGOING XML = 'n'+e.outerHTML);
//set some variables to keep track of our rid and sid
}
};
您还可以从连接的._proto
访问RID和SID属性,例如:
connection._proto.rid
这可能与:https://github.com/jcbrand/converse.js/issues/180
相关文章:
- 可以't让我的if语句处理js中的html表单输入
- 使用agility.js进行页面布局和合成
- 使用Clipboard.js复制span文本
- 使用JS如何动态更改显示的html文件中的文本背景颜色
- 强制模板刷新ember.js
- 如何编写HTML输入的JS内联
- Angular JS IE9 Hashbang url rewriting
- 使用JS将数组转换为json对象
- Node.js v6.2.0类扩展不是函数错误
- 当js函数's已执行
- 要求未定义JS回调参数
- 在自定义mean.io包中使用angular-chart.js作为依赖项
- 无法在数据endVal中设置值=“”;{{ucount}}”;使用Angular JS的CountUp
- 如何从Java/scala调用js美化程序
- 如何更改<svg>标记为<img>用js标记
- 如何使用 node.js 比较两个 json 数组
- chrome扩展:尽管运行了at:documentidle,js脚本还是过早启动
- 节点Js:How to catch a“;没有这样的文件或目录“;读取线模块出错
- Node.js解决方案用于XMPP BOSH预绑定以返回SID和RID
- 得到SID &使用strophe.js的RID