【问题标题】:Nodejs websocket connect to multiple endpointsNodejs websocket连接到多个端点
【发布时间】:2020-05-22 08:28:52
【问题描述】:

在 nodejs 中,如何根据逗号分隔的端点值连接到多个端点。我正在使用库https://www.npmjs.com/package/websocket。从单个客户端我可以连接,但我不知道如何连接到多个端点。 下面是单个 websocket 连接的代码。

const WebSocket = require('ws');

const ws = new WebSocket('wss://echo.websocket.org');

ws.on('open', function open() {
  ws.send('something');
});

ws.on('message', function incoming(data) {
  console.log(data);
});

【问题讨论】:

  • 到目前为止您尝试了什么,您遇到了什么问题?
  • 我已经更新了单端点连接的代码,没有得到如何实现多端点。

标签: node.js


【解决方案1】:

您可以使用数组来存储与多个套接字的连接。这可能是一个想法:

const WebSocket = require('ws');

const urls = ['wss://echo.websocket.org'];
let connections = [];

urls.map( function(url) {
  const ws = new WebSocket(url);

  ws.on('open', function open() {
    ws.send('something');
  });

  ws.on('message', function incoming(data) {
    console.log(data);
  });

  connections.push(ws);
});

connections 数组将存储所有连接,但您不能让单个套接字对象连接到多个端点。

希望对您有所帮助。

【讨论】:

  • 谢谢!!如何重新连接
  • @vikram 我想你可以在这里找到答案:stackoverflow.com/questions/22431751/…
  • 谢谢,实际上我每 n 分钟从 redis 读取端点。我想在阅读后动态添加 url,如果端点已经存在忽略新连接,如果从 redis 获得的新列表没有已经连接的端点,那么它应该断开该端点。我该怎么做我只想修改已连接的端点以断开连接或添加新连接。
猜你喜欢
  • 2021-09-12
  • 1970-01-01
  • 1970-01-01
  • 2018-07-05
  • 2015-09-23
  • 1970-01-01
  • 2012-03-04
  • 2022-10-04
  • 1970-01-01
相关资源
最近更新 更多