faye-websocket 在其 Client 构造函数上公开了 proxy 选项。请在连接开始前传入:

const WebSocket = require('faye-websocket');

const socket = new WebSocket.Client(
  'wss://service.example/socket',
  [],
  { proxy: { origin: 'http://proxy.example:8080' } },
);
socket.on('error', error => console.error(error.message));

第一个 URL 标识 WebSocket 服务。proxy.origin 标识 HTTP 中介。对于允许的、不带代理凭据的公开 WSS 测试,HTTP 代理列表 会为该源提供地址;请验证能否访问实际的 WebSocket 端点。该库将 origin 记录为必需的 proxy 选项,并且还支持代理专用标头和 TLS 配置。

空数组是子协议列表,不是代理列表。当服务需要时,请在那里提供应用的子协议名称。

这会配置由代码创建的 Faye 客户端。如果 WebSocket 归另一个 SDK 所有,请使用该 SDK 支持的途径来提供其连接选项。创建这个单独的套接字不会改变 SDK 现有的连接。

相关文章