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 സർവർ അല്ല.
നിലവിലുള്ള ഇവന്റും വീണ്ടും ബന്ധിപ്പിക്കൽ യുക്തിയും നിലനിർത്തുക, ശേഷം കണക്ഷനുകൾ അവസാനിക്കുമ്പോൾ ക്ലയന്റ് വിച്ഛേദിച്ച് അതിന്റെ ഏജന്റ് വിടുവിക്കുക.