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 agent د SOCKS په اړه خبرې کوي؛ socks5h د منزل DNS هغه proxy ته سپاري. کله چې د عامو منځګړو له لارې د عامه خدمتونو ازموینه اجازه ولري، له SOCKS5 proxy لیست څخه سم endpoint واخلئ.

polling کیدای شي بریالی شي مخکې لدې چې وروستی WebSocket upgrade ناکام شي. دواړه لارې او هر هغه transportOptions وګورئ چې د پورتنۍ کچې agent باندې لیکل کوي.

بېلګه په قصد دا دوه transport کاروي. WebTransport بله پلي کول کاروي، او په براوزر کې بنډل شوی JavaScript د براوزر تنظیمات تعقیبوي. ساده WebSocket endpoint هم Socket.IO سرور نه دی.

موجود event او بیا نښلولو منطق وساتئ، بیا وروسته له دې چې اړیکې پای ته ورسېدې client منقطع کړئ او د هغه agent آزاد کړئ.

اړوندې مقالې