Peers

Bitcore-p2p:Peer.connect 不起作用

  • November 10, 2020

我正在嘗試執行一個簡單的腳本來連接到比特幣對等點,例如:

var bitcore = require('bitcore-lib')
var p2p = require('bitcore-p2p')
var Peer = p2p.Peer;

var peer = new Peer({host: 'localhost', port: 18333, network: Networks.testnet})
peer.on('connect', function () { console.log('connect'); })
peer.on('ready', function(){  console.log('ready'); });
peer.on('disconnect', function() {  console.log('connection closed'); });
peer.connect()

但是,連接似乎永遠不會建立。我只得到“連接”和“連接關閉”輸出,但沒有“連接”。我設置的埠是 Bitcore 配置文件中的埠。

有人可以幫我找出問題所在嗎?

我實際上不確定如何,但現在一切正常。

我在這裡寫了一些要記住的事情以使其正常工作:

1)埠號是bitcoind伺服器的埠號(主網8333,測試網18333)

  1. 在 testnet 的情況下,網路必須作為選項傳遞給 Peer 建構子

3)node版本必須是4.x(使用nvm use 4),否則程式碼會拋出異常

我不確定您到底要做什麼:

peer.on('connected', function(){ console.log('connected'); });

你可以繼續做ready

peer.on('ready', function(){ console.log('connected'); });

連接到對等點並接收通知的範例

var bitcore = require('bitcore-lib');
var Peer = require('bitcore-p2p').Peer;

var peer = new Peer({host: "101.201.31.79"});
//IP of one of the btc.com's miners

peer.on('ready', function(){
   console.log("Connected "+peer.version, peer.subversion, peer.bestHeight);
});
peer.on('disconnect', function(){
   console.log("disconnected");
});
//loop through peer notifications
peer.on('inv', function(message){
   var nodeMsg = message.inventory;
   var nodeMsgLen = nodeMsg.length;
   for (var i = 0; i < nodeMsgLen; i++){
       console.log(nodeMsg[i].hash);
   };
});
//connect
peer.connect();

引用自:https://bitcoin.stackexchange.com/questions/49632