Socket.IO Test Client
Socket.IO सर्वर से कनेक्ट करें, events emit करें और आने वाले संदेशों का निरीक्षण करें।
इनपुट
आउटपुट
रीडमी
Socket.IO क्या है?
Socket.IO एक JavaScript लाइब्रेरी है जो वेब क्लाइंट और सर्वर के बीच रीयल-टाइम, द्विदिशात्मक संचार को सक्षम बनाती है। जबकि यह WebSocket को अपने प्राथमिक ट्रांसपोर्ट के रूप में उपयोग करता है, यह स्वचालित रूप से HTTP long-polling में वापस आ जाता है जब WebSocket उपलब्ध नहीं होता है, जिससे विभिन्न नेटवर्क वातावरण और प्रॉक्सी में कनेक्शन अधिक विश्वसनीय हो जाते हैं। Socket.IO कच्चे ट्रांसपोर्ट के ऊपर अपनी प्रोटोकॉल परत जोड़ता है — जिसमें कस्टम हैंडशेक, हार्टबीट, स्वचालित पुनः कनेक्शन, और एक नामित-इवेंट सिस्टम शामिल है — इसलिए यह सादे WebSocket सर्वर के साथ विनिमेय नहीं है।
Socket.IO की एक मुख्य विशेषता इसका इवेंट मॉडल है: कच्चे संदेश भेजने के बजाय, क्लाइंट और सर्वर नामित इवेंट को उत्सर्जित और सुनते हैं (उदाहरण के लिए, chat message, user joined), जो एप्लिकेशन लॉजिक को स्वच्छ और संगठित करने में आसान बनाता है।
टूल विवरण
यह टूल एक इंटरैक्टिव Socket.IO क्लाइंट प्रदान करता है जो पूरी तरह से ब्राउज़र में चलता है। किसी भी Socket.IO सर्वर से कनेक्ट करें, एक नामित इवेंट चुनें, टेक्स्ट या JSON संदेश तैयार करें, उन्हें भेजें, और आने वाले इवेंट और सर्वर प्रतिक्रियाएं एक टाइमस्टैम्प लॉग में दिखाई दें। यह सक्रिय ट्रांसपोर्ट परत (WebSocket या polling) भी दिखाता है ताकि आप सत्यापित कर सकें कि अपेक्षित अपग्रेड हुआ है।
विशेषताएं
- नामित इवेंट समर्थन — भेजने से पहले कोई भी इवेंट नाम निर्दिष्ट करें ताकि संदेश सर्वर पर सही श्रोता के तहत आएं।
- ट्रांसपोर्ट दृश्यमानता — प्रदर्शित करता है कि क्या कनेक्शन WebSocket या HTTP polling ट्रांसपोर्ट का उपयोग कर रहा है, और Socket.IO अपग्रेड हैंडशेक पूरा होने के बाद स्वचालित रूप से अपडेट होता है।
- टेक्स्ट और JSON मोड — सादे टेक्स्ट में पेलोड तैयार करें या JSON मोड में स्विच करें जिसमें सिंटैक्स हाइलाइटिंग और भेजने से पहले सत्यापन हो।
विकल्प समझाए गए
सर्वर URL — Socket.IO सर्वर का पूर्ण HTTP(S) URL (उदाहरण के लिए, https://example.com/socketio)। Socket.IO सर्वर अक्सर /socket.io/ जैसे पथ पर सुनते हैं; क्लाइंट हैंडशेक पथ को स्वचालित रूप से संभालता है।
इवेंट नाम — संदेश भेजते समय उत्सर्जित करने के लिए Socket.IO इवेंट का नाम। डिफ़ॉल्ट रूप से message है। इसे अपने सर्वर द्वारा सुने जाने वाले इवेंट से मेल खाने के लिए बदलें (उदाहरण के लिए, chat, ping, data)।
डेटा प्रकार — टेक्स्ट और JSON के बीच स्विच करें। JSON मोड में पेलोड को सत्यापित किया जाता है और एक पार्स किए गए ऑब्जेक्ट के रूप में भेजा जाता है; टेक्स्ट मोड में इसे एक सादे स्ट्रिंग के रूप में भेजा जाता है।
ऑटो-स्क्रॉल — जब सक्षम हो, संदेश लॉग स्वचालित रूप से नए संदेश आने पर नवीनतम प्रविष्टि तक स्क्रॉल करता है।
यह कैसे काम करता है
क्लाइंट आधिकारिक Socket.IO JavaScript SDK का उपयोग करके लक्ष्य सर्वर से कनेक्ट करता है। प्रारंभिक HTTP हैंडशेक के बाद, Socket.IO HTTP polling से WebSocket में ट्रांसपोर्ट को अपग्रेड करने का प्रयास करता है। टूल रिपोर्ट करता है कि कौन सा ट्रांसपोर्ट सक्रिय है और जब भी अपग्रेड होता है तो लेबल को अपडेट करता है। सर्वर से प्राप्त सभी इवेंट — इवेंट नाम की परवाह किए बिना — कैप्चर किए जाते हैं और टाइमस्टैम्प के साथ लॉग में प्रदर्शित होते हैं।
सुझाव
- यदि कनेक्शन सफल होता है लेकिन कोई संदेश दिखाई नहीं देते हैं, तो सुनिश्चित करें कि सर्वर कनेक्ट करने वाले क्लाइंट को इवेंट उत्सर्जित करता है, केवल अन्य क्लाइंट को नहीं।
- इवेंट-नाम फ़ील्ड का उपयोग करके कोई भी कोड लिखे बिना सर्वर-साइड हैंडलर को व्यक्तिगत रूप से परीक्षण करें।
- एक "polling" ट्रांसपोर्ट जो कभी "websocket" में अपग्रेड नहीं होता है, अक्सर एक रिवर्स प्रॉक्सी को इंगित करता है जो WebSocket अपग्रेड का समर्थन नहीं करता है (उदाहरण के लिए, स्टिकी सेशन के बिना एक लोड बैलेंसर)।