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 પ્રોક્સી યાદીમાંથી મેળ ખાતું એન્ડપોઇન્ટ લો.
પછીના WebSocket અપગ્રેડ નિષ્ફળ થાય તે પહેલાં polling સફળ થઈ શકે છે. બંને માર્ગો અને ટોચના સ્તરના એજન્ટને ઓવરરાઇડ કરતું કોઈપણ transportOptions તપાસો.
ઉદાહરણ જાણી જોઈને આ બે પરિવહન વાપરે છે. WebTransport બીજું અમલીકરણ વાપરે છે, અને બ્રાઉઝરમાં બંડલ થયેલ JavaScript બ્રાઉઝરના રૂપરેખાંકનને અનુસરે છે. સાદું WebSocket એન્ડપોઇન્ટ પણ Socket.IO સર્વર નથી.
હાલનું ઇવેન્ટ અને ફરી-જોડાણ તર્ક રાખો, પછી જોડાણો પૂરાં થાય ત્યારે ક્લાયન્ટ ડિસ્કનેક્ટ કરો અને તેનો એજન્ટ મુક્ત કરો.