Socket.IO í Node.js: notaðu SOCKS-umboð fyrir polling og WebSocket
Haltu URL Socket.IO-þjónsins óbreyttu og skoðaðu yfirskrifanir fyrir hverja flutningsleið ef uppfærslan mistekst.
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'],
});Notaðu raunverulegu Socket.IO-þjónustuna. Node-umboðið semur um SOCKS; socks5h framselur DNS áfangastaðarins til þess proxy. Taktu samsvarandi endapunkt úr SOCKS5-proxylistanum þegar prófanir á opinberum þjónustum í gegnum opinbera milliliði eru leyfðar.
Polling getur tekist áður en síðari WebSocket-uppfærsla mistekst. Skoðaðu báðar leiðir og allar transportOptions sem yfirskrifa umboðið á efsta stigi.
Dæmið notar þessar tvær flutningsleiðir viljandi. WebTransport notar aðra útfærslu, og JavaScript sem er pakkað með vafranum fylgir stillingum vafrans. Venjulegur WebSocket-endapunktur er heldur ekki Socket.IO-þjónn.
Haltu núverandi atburða- og endurtengingarlógík, aftengdu svo biðlarann og slepptu umboðinu hans þegar tengingunum er lokið.