打开websocket的当前代码:
139 this.ws = new WebSocket('wss://ws.blockchain.info/inv')
140 this.ws.on('open', () => {
141 this.ws.send('{"op":"unconfirmed_sub"}')
142 setInterval(() => {
143 this.ws.send('{"op":"ping"}')
144 }, 10000)
145 })
首先,这段代码没有任何问题,每当我的节点js运行时,它仍然保持websocket活着。 但是从昨天开始,websocket每隔10秒左右发出一次这样的错误。
Error: WebSocket is not open: readyState 3 (CLOSED)
at WebSocket.send (/root/project/node_modules/ws/lib/websocket.js:31
at Timeout.setInterval [as _onTimeout] (/root/project/src/master.js:143:17)
at ontimeout (timers.js:469:11)
at tryOnTimeout (timers.js:304:5)
at Timer.listOnTimeout (timers.js:264:5)
这是因为websocket本身正在关闭吗?如果是,那么即使它已经关闭有点像重新打开它,也可以保持websocket活着。或者也许是另一种让它保持活力的替代方法? websocket本身就是区块链api。 https://blockchain.info/api/api_websocket
对不起我的新手问题tbh我不是程序员,但我想学习如何解决这个希望有人在stackoverflow可以帮助我! :D谢谢Stackoverflow!