BCH交易失败:缺少输入25

时间:2018-09-25 10:09:47

标签: javascript transactions bitcoin-testnet

我正在使用Bitcoin Cash JS创建交易,我的代码如下:

let BITBOXCli = require('bitbox-cli/lib/bitbox-cli').default;
const explorers = require('bitcore-explorers')
const insight = new explorers.Insight('https://test-bch-insight.bitpay.com')
let BITBOX = new BITBOXCli();
let txb = new BITBOX.TransactionBuilder('testnet');
var To = 'mkiuwbSQQVxMvvbBcYEKUdZgJfURhu3hrW'
var from = 'mvStb7hPtDCL8dmyifPGcYTuToVzf7ajTb';
var bch = require('bitcoincashjs')
var bchLib = require('@owstack/bch-lib')
const buf = new Buffer('b27ab45d3e3d157e8b95f800347974f9991cf13ceb814e1992f40c5e4e6d5253', 'hex')
const privateKey = new bch.PrivateKey(buf, bch.Networks.testnet)
const address = privateKey.toAddress('testnet')
insight.getUnspentUtxos(address.toString(), function (error, utxos) {
  if (error) {
    console.error(error)
    return
  }
  console.log(utxos)

  const utxo = {
    txid: utxos[0].txid,
    outputIndex: utxos[0].vout,
    script: utxos[0].scriptPubKey,
    satoshis: utxos[0].satoshis
  }
  const transaction = new bch.Transaction()
    .from(utxo)
    .to(To, 50000)
    .sign(0, privateKey)
  console.log(transaction.toString())
});

现在,当我运行这段代码时,我 能够获取原始交易哈希 ,但是我无法广播交易,并且消息如下: >

  

缺少输入错误:-25

对这个错误有任何想法吗? 还是有其他方法可以创建BCH交易?

1 个答案:

答案 0 :(得分:-1)

您似乎正在尝试创建一个简单的交易,以将BCH从一个地址发送到另一个地址。现在,在BITBOX SDK存储库中有一个针对此确切用例的示例:

https://github.com/Bitcoin-com/bitbox-javascript-sdk/blob/master/examples/applications/wallet/send-bch/send-bch.js

还有其他示例,例如创建一个检查余额的钱包:

https://github.com/Bitcoin-com/bitbox-javascript-sdk/tree/master/examples/applications/wallet

Wormhole SDK中甚至还有更多示例。 (Wormhole SDK是BITBOX的超集,因此它可以执行BITBOX可以做的一切):

https://github.com/Bitcoin-com/wormhole-sdk/tree/master/examples