Node'i pakett ws võtab oma ühendusevalikutes vastu HTTP-agendi. Edasisaatmise puhverserveri jaoks saab ES-mooduli fragment kasutada HttpsProxyAgenti:

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);
});

See eeldab, et mõlemad paketid on juba rakenduse osa. WebSocketi URL valib teenuse, agendi URL valib puhverserveri. HTTP-puhverserverite loendist pärit HTTP-aadress võib täita agendi URL-i lubatud avaliku WSS-testi jaoks ilma puhverserveri volitusteta; kontrolli juurdepääsu teenuse tegelikule lõpp-punktile.

HttpsProxyAgent loob HTTP CONNECT-tunneli ja annab ühendatud transpordi kliendile. See toetab nii WebSocketi ühendusi kui ka HTTPS-päringuid, seega rakendus ei pea CONNECT-vahetust ise ehitama.

Jätka rakenduse tavapärase open, message ja close käsitlemisega. Sündmus open tähistab WebSocketi kätluse lõppemist valitud marsruudil; JavaScripti objekti loomine üksi ei ole seda lõpetanud.

Seotud artiklid