我知道还有很多其他问题与strophe带内注册和XEP 0077相关,但我的问题如下:
我正在尝试以正确的形式写下面的节目:
<iq to='marlowe.shakespeare.lit' type='set'>
<query xmlns='jabber:iq:register'>
<username>juliet</username>
<password>R0m30</password>
<name>JJ</name>
</query>
</iq>
但我无法正确写出来。我坚持如何在javascript中编写用户名,密码和名称字段。
这是我到目前为止写的:
connection.sendIQ($iq({to: "server", type: "set"}).c('query', {xmlns: "jabber:iq:register"}).c)
非常感谢任何帮助!
答案 0 :(得分:1)
我知道这是一篇旧帖子,但我认为Strophe Plugin for In-Band Registration正是您所寻找的!
<head>
<!-- ... -->
<script type="text/javascript" src="strophe.min.js"></script>
<script type="text/javascript" src="strophe.register.js"></script>
<!-- ... -->
</head>
使用Javascript:
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("example.com", callback, wait, hold);
答案 1 :(得分:0)
如果您要使用javascript,请使用Strophe和connect函数。
connection.connect(jid,password,cb);
带内注册适用于非JavaScript使用。您将组装正文并将字符串发送到您的jabber服务器。有关示例,请参阅http://metajack.im/2008/10/03/getting-attached-to-strophe/。