2012-03-14 38 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