【问题标题】:WebSocket replies to each client 'onConnect' with node.jsWebSocket 使用 node.js 回复每个客户端“onConnect”
【发布时间】:2019-07-20 16:05:47
【问题描述】:

我的服务器上有一个ws.on('connection') 事件,它在每个连接的客户端的第一次连接上发送一个 JSON 对象。

但是因为这个位:

        // Sending the payload to all clients.
        wss.clients.forEach((client) => {
            // Prepare for transmission.
            let transmission = JSON.stringify(SocketObject.query());

            // Debug
            console.log('[server:onConnection:init]');

            // Send the transmission.
            client.send(transmission);
        });

每次客户端连接时,JSON 对象都会一次又一次地传输到每个客户端。是否可以将此回复仅限于最初连接的客户端?

【问题讨论】:

    标签: javascript node.js websocket server client


    【解决方案1】:

    这是我的错误,所以当这样包装时:

        wss.on('connection', (ws) => {
            console.log('[server:onConnection]');
            ws.send('FIRST_RESPONSE');
    

    ...它完全符合我的需要。这意味着它只将消息发送到连接的客户端。我不知道为什么我有forEach(client) 位。

    【讨论】:

      猜你喜欢
      • 2017-04-04
      • 2016-05-21
      • 2019-10-31
      • 1970-01-01
      • 2020-08-28
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多