កញ្ចប់ ws របស់ Node ទទួលយកភ្នាក់ងារ HTTP នៅក្នុងជម្រើសតភ្ជាប់របស់វា។ សម្រាប់ forward proxy បំណែកម៉ូឌុល 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);
});

នេះសន្មតថាកញ្ចប់ទាំងពីរជាផ្នែកនៃកម្មវិធីរួចហើយ។ URL របស់ WebSocket ជ្រើសសេវា ហើយ URL របស់ភ្នាក់ងារជ្រើស proxy។ អាសយដ្ឋាន HTTP ពីបញ្ជី proxy HTTP អាចបំពេញ URL របស់ភ្នាក់ងារសម្រាប់ការសាកល្បង WSS សាធារណៈដែលអនុញ្ញាតដោយគ្មានព័ត៌មានសម្គាល់ proxy; ពិនិត្យការចូលទៅចំណុចបញ្ចប់សេវាពិតប្រាកដ។

HttpsProxyAgent បង្កើតផ្លូវរូង HTTP CONNECT ហើយប្រគល់ការដឹកជញ្ជូនដែលបានតភ្ជាប់ទៅអតិថិជន។ វាគាំទ្រការតភ្ជាប់ WebSocket និងសំណើ HTTPS ដូច្នេះកម្មវិធីមិនចាំបាច់បង្កើតការផ្លាស់ប្ដូរ CONNECT ដោយខ្លួនឯងទេ។

បន្តជាមួយការគ្រប់គ្រងធម្មតានៃ open, message និង close ក្នុងកម្មវិធី។ ព្រឹត្តិការណ៍ open បង្ហាញថា WebSocket handshake បានបញ្ចប់នៅលើផ្លូវដែលបានជ្រើស; ការបង្កើតវត្ថុ JavaScript តែម្នាក់ឯងមិនបានបញ្ចប់វាទេ។

អត្ថបទពាក់ព័ន្ធ