मैं एक एक्सएमपीपी क्लाइंट पर काम कर रहा हूं और Strophe (जावास्क्रिप्ट संस्करण) द्वारा भेजे गए/प्राप्त संदेशों के साथ कोई समस्या है।स्ट्रॉफ़े चरित्र एन्कोडिंग समस्या
समस्या संदेश है जिसमें "विशेष" वर्ण होते हैं। उदाहरण के लिए, यदि मैं भेजता हूं:
मैं यहां हूं।
एक बाहरी ग्राहक (अर्थात iChat) को प्रदर्शित करेगा
मैं और ampapos, यहाँ हूँ।
एक स्ट्रॉफ़ क्लाइंट कुछ भी प्रदर्शित नहीं करता है।
यदि मैं उसी संदेश को iChat से स्ट्रॉफ़ क्लाइंट में भेजता हूं, तो यह ठीक से प्रदर्शित होता है। किसी भी मदद के लिए अग्रिम में
<html>
<head>
<script type='text/javascript' src='strophe.min.js'></script>
<script type='text/javascript'>
function onConnect(status) {
if (status == Strophe.Status.CONNECTED) {
var message = $msg({to: CONTACT_JID, from: JID, type: 'chat'}).c('body').t("I'm here."); ;
connection.send(message.tree());
}
}
var connection = new Strophe.Connection('http://bosh.metajack.im:5280/xmpp-httpbind');
connection.connect(JID, PASS, onConnect);
</script>
</head>
<body></body>
</html>
धन्यवाद:
यहाँ सबसे बुनियादी नमूना कोड मैं के साथ आ सकता है।
संपादित करें:
आउटबाउंड, ऐसा लगता है छंद डबल एन्कोडिंग है। जब मैं
टाइप मैं
यह
<body>I&apos;m</body>
भीतर भेज रहा है, यह CDATA ठीक से निपटने नहीं प्रतीत होता है। किसी भी मार्गदर्शन या विचारों की सराहना की जाती है।
का खुला गैर कम से कम संस्करण आप js द्वारा भेजे गए डेटा को देखने और जाँच इस रूपांतरण strophe.js द्वारा या सर्वर साइड पर किया जाता है कि क्या करने में सक्षम हैं? – Cheery
मैं अभी उसमें खुदाई कर रहा हूं ... प्रश्न अपडेट करेगा – jopke
एक "विचार": याद रखें कि संदेश 0 एक्स'मान्य नहीं है जब संदेश एक्सएमएल से एचटीएमएल में जाता है - यह एक्सएमएल में केवल वैध इकाई है (जैसा कि विरोध किया गया है ''') - जो संभवतः कुछ HTML- आधारित क्लाइंट इसे प्रदर्शित नहीं करेंगे। – JimmiTh