WebSocket已经处于CLOSING或CLOSED状态Socket io

时间:2018-11-09 17:45:01

标签: node.js reactjs socket.io

套接字io返回错误为: WebSocket已处于Socket io处于CLOSING或CLOSED状态。

Node JS:

socket.to(socketId).emit('details', { userdetails: username });

反应JS:

socket.on('details', data => {
    console.log(data.userdetails);
});

能否请您帮我解决WebSocket处于关闭或关闭状态的问题。 任何形式的帮助都是有意义的。

2 个答案:

答案 0 :(得分:2)

默认pingTimeout的更改从60000(v2.0.4)更改为5000(v2.1.0 +),对于某些浏览器(例如Chrome)来说还不够。

v2.1.0 +(包括最新的v2.2.0)上的此问题的解决方案是覆盖服务器上的默认pingTimeout。

price    247.5
Name: 0.25, dtype: float64

price    495.0
Name: 0.5, dtype: float64

price    742.5
Name: 0.75, dtype: float64

Bottom 25% of prices are below/equal to 247.5 thats 25.0% of all items
Bottom 50% of prices are below/equal to 495.0 thats 50.0% of all items
Bottom 75% of prices are below/equal to 742.5 thats 75.0% of all items

答案 1 :(得分:0)

1)回滚到socket.io-client版本2.0.3。最新的2.1.1版本中存在一个问题。

npm install socket.io-client@2.0.3 --save

2)另外,请确保您自己在React.js中进行清理并关闭套接字...

  componentDidMount() {
    this.socket = io('http://www.example.com');
  }

  componentWillUnmount() {
    this.socket.close();
  }