Node-ийн ws клиентийг HTTP прокси агентоор холбох
HttpsProxyAgent-ыг Node-ийн ws конструкторт дамжуулж, WebSocket гар барилт forward проксигоор явагдана.
Node-ийн ws багц холболтын тохиргоонд HTTP агент хүлээн авдаг. Forward проксид ES модулийн хэсэг 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);
});
Энэ нь хоёр багц аль хэдийн програмын хэсэг гэж үзнэ. WebSocket URL үйлчилгээг сонгож, агентын URL проксийг сонгоно. HTTP прокси жагсаалтаас авсан HTTP хаяг нь прокси нэвтрэх мэдээлэлгүйгээр зөвшөөрөгдсөн нийтийн WSS туршилтад агентын URL-ыг бөглөж болно; үйлчилгээний бодит төгсгөлийн цэгт хандах боломжийг шалгаарай.
HttpsProxyAgent HTTP CONNECT туннель үүсгэж, холбогдсон тээврийг клиентэд өгдөг. Энэ нь WebSocket холболт болон HTTPS хүсэлтийг дэмждэг тул програм CONNECT солилцоог өөрөө барих шаардлагагүй.
Програмын ердийн open, message болон close боловсруулалтыг үргэлжлүүлээрэй. open үйл явдал сонгосон замаар WebSocket гар барилт дууссныг илэрхийлнэ; зөвхөн JavaScript объект үүсгэх нь үүнийг дуусгаагүй.