Lidhja e klientit ws të Node përmes një agjenti HTTP proxy
Kalo HttpsProxyAgent te konstruktori ws i Node, që shtrëngimi i duarve WebSocket të kalojë përmes proxy-t përpara.
Paketa ws e Node pranon një agjent HTTP në opsionet e lidhjes. Për një proxy përpara, një fragment i modulit ES mund të përdorë HttpsProxyAgent:
import WebSocket from 'ws';
import { HttpsProxyAgent } from 'https-proxy-agent';
const agent = new HttpsProxyAgent('http://proxy.example.net:8080');
const socket = new WebSocket('wss://socket.example.net/events', {
agent,
});
socket.on('error', error => {
console.error(error.message);
});
Kjo supozon se të dyja paketat janë tashmë pjesë e aplikacionit. URL-ja e WebSocket zgjedh shërbimin, URL-ja e agjentit zgjedh proxy-n. Një adresë HTTP nga lista e proxy-ve HTTP mund të plotësojë URL-në e agjentit për një test publik WSS të lejuar pa kredenciale proxy; kontrollo aksesin te pika e vërtetë e shërbimit.
HttpsProxyAgent ndërton një tunel HTTP CONNECT dhe i dorëzon klientit transportin e lidhur. Ai mbështet lidhjet WebSocket dhe kërkesat HTTPS, kështu që aplikacioni nuk duhet ta ndërtojë vetë shkëmbimin CONNECT.
Vazhdo me trajtimin e zakonshëm të open, message dhe close në aplikacion. Ngjarja open shënon përfundimin e shtrëngimit të duarve WebSocket në rrugën e zgjedhur; krijimi vetëm i objektit JavaScript nuk e ka përfunduar atë.