Coinbase-pro для Node.js - разрыв соединения с Websocket с ошибкой: прочтите ECONNRESET

В настоящее время у меня возникла проблема с пакетом coinbase-pro-node npm (https://github.com/coinbase/coinbase-pro-node). Я подключаюсь к каналу matches и слушаю сообщения на нем, но соединение с Websocket разрывается через несколько часов, ничего мне не сообщая. Я не могу отследить проблему, и это не происходит с одинаковыми интервалами. Иногда он ломается через несколько минут после запуска сценария. Спасибо за помощь.

Код:

const CoinbasePro = require('coinbase-pro');
var coinbaseWs = '';

function connect() {
    coinbaseWs = new CoinbasePro.WebsocketClient(
        ['BTC-USD'],
        'wss://ws-feed.pro.coinbase.com',
        {
            key: 'xxxx',
            secret: 'xxxx',
            passphrase: 'xxxx',
        },
        { channels: ['matches'] }
    );  

    coinbaseWs.on('message', async data => { 
        console.log(data)  
    });

    coinbaseWs.on('error', err => {
      console.error("Connection with Coinbase websocket failed with error: " + err);
      console.log("Error stack trace: " + err.stack);
    });

    coinbaseWs.on('close', () => {
      console.error("Connection with Coinbase websocket closed!");
    });
}

connect();

Стек ошибок:

Error: read ECONNRESET
File "internal/stream_base_commons.js", line 167, in TLSWrap.onStreamRead

person Marko Grbic    schedule 17.05.2019    source источник


Ответы (1)


время от времени он ломается без видимой причины. Все, что вы можете сделать, это прослушать контрольные сообщения и использовать их, чтобы решить, следует ли повторно инициировать новый веб-канал. Я поднял аналогичный вопрос непосредственно в службу поддержки coinbase pro / gdax.

person Rob Evans    schedule 11.05.2020
comment
Спасибо, что я и сделал в конце концов. - person Marko Grbic; 12.05.2020
comment
Не могли бы вы показать, как вы повторно подключаетесь с помощью библиотеки Coinbase? - person Gerfried; 22.01.2021