Socket.io似乎失去了连接功能之外的客户端

时间:2018-10-09 17:58:11

标签: javascript node.js sockets websocket socket.io

经过2天的密集训练后,我无法弄清楚我的代码出了什么问题。

    var nsp = io.of(`/notifications`)

    nsp.on('connection', socket => {
      socket.join(`notifications/5bbbaf0dff233bc36eaea535`)
      setTimeout(() => {
        nsp.to(`notifications/5bbbaf0dff233bc36eaea535`)
        .clients((error, data) => {
          console.log(data)
        })
      }, 10000)
    })

我在这里得到我的客户

    app.post('/api/addtomyshoppingbag', (req, res) => {
      nsp.to(`notifications/5bbbaf0dff233bc36eaea535`).clients((error, data) => {
        console.log("Clients", data)
      })
     })

这里的客户是空的,我没有断开连接...

我这样连接客户端

const socket = socketIOClient(`${process.env.REACT_APP_URI}/notifications`, {
  query: { userId: this.props.userId },
  reconnection: true,
  reconnectionDelay: 1000,
  reconnectionAttempts: Infinity,
  transports: ['websocket']
})

谢谢

更新

想通了!

是因为集群...

或者不要使用群集或使用粘性负载均衡器。

0 个答案:

没有答案
相关问题