Node.js-тегі Socket.IO: polling және WebSocket үшін SOCKS агентін қолданыңыз
Socket.IO серверінің URL мекенжайын өзгертпей ұстаңыз және жаңарту сәтсіз болса, әр тасымалдағыш бойынша қайта анықтауларды тексеріңіз.
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 сервері емес.
Қолданыстағы оқиғалар мен қайта қосылу логикасын сақтаңыз, содан кейін байланыстар аяқталғанда клиентті ажыратып, оның агентін босатыңыз.