यह प्रश्न socket.io संस्करणों < 0.9.x से संबंधित है। नए संस्करणों में ट्रांसपोर्ट सेट करने के विभिन्न ट्रांसपोर्ट और तरीके हैं।node.js और socket.io। websocket के लिए परिवहन प्रकार विन्यास?
मैं दो सप्ताह में नोड जेएस और सॉकेट.ओ का परीक्षण करता हूं। जब मैंने शुरू किया तो मुझे क्लाइंट में socket.send(message)
फ़ंक्शन से समस्या मिली। मैं सर्वर को कोई संदेश नहीं भेज सकता। लेकिन मैं अभी भी सर्वर से संदेश प्राप्त कर सकता हूं। जब मैंने सर्वर पक्ष के कॉन्फ़िगरेशन ट्रांसपोर्ट को पाया तो मैंने इस समस्या को हल किया:
socket.set('transports',[
'xhr-polling'
, 'jsonp-polling'
]);
सबकुछ अच्छा है। अब मैं सर्वर को संदेश भी भेज सकता हूं। लेकिन मुझे अभी भी एक सवाल है कि मुझे परिवहन को क्यों कॉन्फ़िगर करना है। डिफ़ॉल्ट socket.io उपयोग WebSocket परिवहन इस तरह की स्थापना:
socket.set('transports', [
'websocket'
, 'flashsocket'
, 'htmlfile'
, 'xhr-polling'
, 'jsonp-polling'
]);
तो यह पहले नहीं XHR-मतदान में WebSocket उपयोग करता है। लेकिन socket.send(msg)
का उपयोग करते समय सर्वर को क्लाइंट से भेजे गए किसी भी संदेश को प्राप्त नहीं किया जा सकता है socket.emit(...)
।
तो समस्या यह है कि यहां वेबसाईट का समर्थन नहीं कर रहा है? ब्राउज़र या node.js ... मुझे खेद है, लेकिन मैंने Google से इतने सारे पेज खोजे और मुझे इसके लिए कोई जवाब नहीं मिला है।
मैं संस्करण 0.8.16, socket.io संस्करण 0.9.13 और नवीनतम ब्राउज़रों Node.js का उपयोग करें: क्रोम, फ़ायरफ़ॉक्स, ओपेरा
मैं WebSocket नहीं XHR-मतदान का उपयोग करना चाहते।