हम जो भी संस्करण का उपयोग कर रहे हैं यदि हम सिर्फ कंसोल.लॉग () "io" ऑब्जेक्ट का उपयोग करते हैं जो हम अपने सर्वर साइड नोडज कोड में उपयोग करते हैं, [जैसे io.on ('कनेक्शन', फ़ंक्शन (सॉकेट) {...});] , हम देख सकते हैं कि "io" सिर्फ एक json ऑब्जेक्ट है और कई चाइल्ड ऑब्जेक्ट हैं जहाँ सॉकेट आईडी और सॉकेट ऑब्जेक्ट संग्रहीत हैं।
मैं socket.io संस्करण 1.3.5, btw का उपयोग कर रहा हूं।
यदि हम io ऑब्जेक्ट में देखते हैं, तो इसमें,
sockets:
{ name: '/',
server: [Circular],
sockets: [ [Object], [Object] ],
connected:
{ B5AC9w0sYmOGWe4fAAAA: [Object],
'hWzf97fmU-TIwwzWAAAB': [Object] },
यहां हम सॉकेट्स "B5AC9w0sYmOGWe4fAAAA" आदि देख सकते हैं, इसलिए हम कर सकते हैं,
io.sockets.connected[socketid].emit();
फिर, आगे के निरीक्षण पर हम खंडों को देख सकते हैं,
eio:
{ clients:
{ B5AC9w0sYmOGWe4fAAAA: [Object],
'hWzf97fmU-TIwwzWAAAB': [Object] },
तो, हम यहाँ से एक सॉकेट प्राप्त कर सकते हैं
io.eio.clients[socketid].emit();
इसके अलावा, हमारे पास इंजन है,
engine:
{ clients:
{ B5AC9w0sYmOGWe4fAAAA: [Object],
'hWzf97fmU-TIwwzWAAAB': [Object] },
तो, हम भी लिख सकते हैं,
io.engine.clients[socketid].emit();
इसलिए, मुझे लगता है कि हम उपरोक्त 3 तरीकों में से किसी में भी अपना लक्ष्य प्राप्त कर सकते हैं,
- io.sockets.connected [socketid] .emit (); या
- io.eio.clients [socketid] .emit (); या
- io.engine.clients [socketid] .emit ();