import { io } from 'socket.io-client';
import { SocksProxyAgent } from 'socks-proxy-agent';

const agent = new SocksProxyAgent('socks5h://proxy.example:1080');
const socket = io('https://events.example', {
  agent,
  transports: ['polling', 'websocket'],
});

वास्तविक Socket.IO सेवा प्रयोग गर्नुहोस्। Node एजेन्टले SOCKS मा वार्ता गर्छ; socks5h ले गन्तव्यको DNS त्यो प्रोक्सीलाई दिन्छ। सार्वजनिक मध्यस्थता मार्फत सार्वजनिक सेवाको परीक्षण अनुमति भएको बेला SOCKS5 प्रोक्सी सूचीबाट मिल्ने एन्डपोइन्ट लिनुहोस्।

पछिको WebSocket अपग्रेड असफल हुनुअघि polling सफल हुन सक्छ। दुवै मार्ग र माथिल्लो तहको एजेन्टलाई ओभरराइड गर्ने कुनै पनि transportOptions जाँच्नुहोस्।

उदाहरणले जानाजान यी दुई ट्रान्सपोर्ट प्रयोग गर्छ। WebTransport अर्को कार्यान्वयन प्रयोग गर्छ, र ब्राउजरमा बन्डल गरिएको JavaScript ब्राउजरको कन्फिगरेसन पछ्याउँछ। साधारण WebSocket एन्डपोइन्ट पनि Socket.IO सर्भर होइन।

विद्यमान इभेन्ट र पुनःजडान तर्क राख्नुहोस्, त्यसपछि जडान सकिएपछि क्लाइन्ट विच्छेद गर्नुहोस् र यसको एजेन्ट मुक्त गर्नुहोस्।

सम्बन्धित लेखहरू