如何使用RPC生成钱包并检索比特币钱包

时间:2020-07-17 15:25:31

标签: php node.js laravel rpc bitcoind

我想了解如何创建一个钱包,以及钱包和地址之间的区别,以及如何取回使用RPC创建的钱包。因此,我正在使用PHP和Node js进行实施。 PHP我正在使用laravel软件包denpamusic/laravel-bitcoinrpc 和node js我正在使用request-promise,并且连接成功。

const   USER = process.env.RPC_USER,
        PASS = process.env.RPC_PASSWORD,
        PORT = process.env.RPC_PORT,//8332
        HOST = process.env.RPC_HOST;//12.1.122.1

async getWalletInfo({req, response}){
    return await rp(requestOption(`{"jsonrpc":"1.0","id":"curltext","method":"getwalletinfo","params":[]}`))
  }
function requestOption(dataString) {
  return {
      url: `http://${USER}:${PASS}@${HOST}:${PORT}/`,
      method: "POST",
      headers: headers,
      body: dataString
  };
}

那是PHP的node.js代码及以下

public function requestNewWallet($block, $wallet){
        switch ($block) {
            case 'bitcoin':
                return $this->bitcoind()->getwalletinfo();
            default:
                return null;
        }
}

它给出了相同的错误

Denpa\Bitcoin\Exceptions\BadRemoteCallException Wallet file not specified (must request wallet RPC through /wallet/<filename> uri-path)

所以请解决该错误,两种语言都一样

1 个答案:

答案 0 :(得分:0)

好找到答案了,所以我必须通过钱包才能获得PHP和node.js,我必须经过钱包/ {name}端点才能看起来url: http://${USER}:${PASS}@${HOST}:${PORT}/wallet/{name}

然后是PHP代码

public function requestNewWallet($block, $wallet){
        switch ($block) {
            case 'bitcoin':
                return $this->bitcoind()->wallet('{dirname}')->getwalletinfo();
            default:
                return null;
        }
}