我试图弄清楚如何让Strophe.js与XEP-0055插件一起使用。所以我想我首先必须确定服务支持哪些搜索字段,然后我必须发送实际请求:
<iq type='set'
from='romeo@montague.net/home'
to='characters.shakespeare.lit'
id='search2'
xml:lang='en'>
<query xmlns='jabber:iq:search'>
<last>Capulet</last>
</query>
</iq>
但是如何将其翻译成Strophe.js查询?这是我的尝试:
$iq({to: 'characters.shakespeare.lit',
from: 'romeo@montague.net/home',
type: 'set',
id: 'search2'}).c('query', {xmlns: 'jabber:iq:search'}).t("last", search_query)
我究竟需要发送什么,例如
to:characters.shakespeare.lit - 是我正在使用的XMPP服务的地址?例如。 jabber.org
来自:romeo@montague.net/home - 这是我在服务器上的ID吗?
答案 0 :(得分:2)
var iq = $iq({
type: 'set',
id: 'search2',
to: 'vjud.yourserver.org'
})
.c('query', {xmlns: 'jabber:iq:search'})
.c('x', {xmlns: 'jabber:x:data', type:'submit'})
.c('field', {var: 'first'}).c('value','Rub*').up();
conn.sendIQ(iq);
注意: to:characters.shakespeare.lit
不是您的服务器,而是vcard服务搜索。
.c('field',{var:'first'})如果有任何错误将var更改为'var'