2012-03-08 24 views
3

這樣如何用strophe發送CDATA中的消息體?

$msg({to: 'user', from: 'me', type: 'chat'}).c("body").t('some data'); 

產生我生成消息:

<message to='user' from='me' type='chat' xmlns='jabber:client'> 
    <body>some data</body> 
</message> 

但我需要這樣的:

<message to='user' from='me' type='chat' xmlns='jabber:client'> 
    <body><![CDATA[some data]]></body> 
</message> 

strophejs有東西還是我需要生成他們自己?是否可以將CDATA發送給XMPP?

+1

爲什麼你需要它成爲CDATA? – Zash 2012-03-08 18:25:50

+0

數據可以是xml或json,所以我認爲我需要它 – Vytautas 2012-03-09 07:20:26

回答

2

您可以發送CDATA,但我認爲在這種情況下您不需要關心它。只需將串接的數據傳遞給.t()方法,它應該注意逃避它。

也不能保證CDATA將始終是CDATA,至少有一臺服務器將它重新序列化爲具有&escaped;實體的普通文本節點。