WS websocket send()作为一个函数

我有这个问题。 我连接到另一个服务器的socket.io(工程),我想通过WS发送到客户端(处理)。 主要的问题是它只发送一次,我想发送所有的socket.io得到一个input。

实际代码:

var io = require("socket.io-client"); var socket = io.connect('http://socket.io.server:8000'); var WebSocketServer = require('ws').Server , wss = new WebSocketServer({port: 8080}); var temp = 0; socket.on('connect', function () { console.log("socket connected") ; }); socket.on('udp message', function(msg) { temp = msg/100; console.log(temp) ; wss.on('connection', function(ws) { ws.send(temp.toString()); }); }); 

我想要什么:

 socket.on('udp message', function(msg) { temp = msg/100; console.log(temp) ; ws.send(temp.toString()); }); wss.on('connection', function(ws) { console.log("Connected to client") }); 

这样我可以在我的WS客户端有一个实时数据。

如果你只需要处理一个WebSocket客户端,你可以这样做:

 var ws = null; socket.on('udp message', function(msg) { var temp = msg/100; console.log(temp); // make sure we have a connection if (ws !== null) { ws.send(temp.toString()); } }); wss.on('connection', function(_ws) { console.log("Connected to client"); ws = _ws; }); 

如果您有多个WebSocket客户端,则需要将其_ws存储在一个数组中,并与每个传入的udp message事件一起发送到存储在该数组中的每个WebSocket客户端。