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 проксија кога се дозволени тестови на јавни услуги преку јавни посредници.

Polling може да успее пред подоцнежната WebSocket надградба да не успее. Проверете ги двата патишта и сите transportOptions што го заменуваат агентот на најгорно ниво.

Примерот намерно ги користи овие два транспорта. WebTransport користи друга имплементација, а JavaScript спакуван со прелистувачот ги следи поставките на прелистувачот. Ни обична WebSocket крајна точка не е Socket.IO сервер.

Задржете ја постоечката логика за настани и повторно поврзување, потоа исклучете го клиентот и ослободете го неговиот агент кога врските ќе завршат.

Поврзани статии