A client library to connect to Bitcoin Core RPC in JavaScript.
bitcoind-rpc.js runs on node, and can be installed via npm:
npm install bitcoind-rpcvar run = function() { var bitcore = require('bitcore'); var RpcClient = require('bitcoind-rpc'); var config = { protocol: 'http', user: 'user', pass: 'pass', host: '127.0.0.1', port: '18332', }; // config can also be an url, e.g.: // var config = 'http://user:pass@127.0.0.1:18332'; var rpc = new RpcClient(config); var txids = []; function showNewTransactions() { rpc.getRawMemPool(function (err, ret) { if (err) { console.error(err); return setTimeout(showNewTransactions, 10000); } function batchCall() { ret.result.forEach(function (txid) { if (txids.indexOf(txid) === -1) { rpc.getRawTransaction(txid); } }); } rpc.batch(batchCall, function(err, rawtxs) { if (err) { console.error(err); return setTimeout(showNewTransactions, 10000); } rawtxs.map(function (rawtx) { var tx = new bitcore.Transaction(rawtx.result); console.log('\n\n\n' + tx.id + ':', tx.toObject()); }); txids = ret.result; setTimeout(showNewTransactions, 2500); }); }); } showNewTransactions(); };Code released under the MIT license.
Copyright 2013-2018 BitPay, Inc.