2012-03-14 39 views
1

我有问题发送简单的json消息到其他xmpp用户使用strophe。该命令创建消息:Strophe和JSON消息

var json_stringified_msg = '{"type":"ola"}';

var reply = $msg({to: this.m_user, from: this.jid_connection, type: 'chat'}).c("body").t(json_stringified_msg);

connection.send(reply.tree());

的问题是,在另一侧上的客户端在聊天接收: {" ACTION " QUOT;改变_ "," MODE " QUOT; KEYBOARD "}

因为它是一个封闭的客户端,所以我无法从另一端创建unescape。

如何准确发送json消息到另一边?

感谢您的帮助。

问候

回答

0

我修改strophe.js:

t: function (text) 
{ 
    //var child = Strophe.xmlTextNode(text); 
    var child = Strophe.xmlGenerator().createTextNode(text); 
    this.node.appendChild(child); 
    return this; 
} 

,它为我工作得很好。

0

RFC6121状态:

元素包含指定消息的文本内容的人类可读的XML字符数据。

并且它也规定:

的元件必须不包含混合的内容(如在3.2.2节中定义[XML])。

我不认为你的JSON正在变成一个字符串。

您可以从这里阅读:http://xmpp.org/rfcs/rfc6121.html#message-syntax-body