如何保持区块链websocket活着?

时间:2018-04-11 11:20:48

标签: javascript node.js websocket blockchain.info-api

打开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!

0 个答案:

没有答案