0

我无法从 Geth Javascript 控制台访问私有网络上部署和挖掘的以太坊合约。不知道问题出在哪里,感谢任何帮助。

提前感谢您的宝贵时间。

设想

我启动了我的 Geth 如下

geth --datadir ~/.ethereum/myProject --networkid 1234 --rpc --rpcport 8546 --rpcapi "eth,net,web3" --unlock 0 console

我已经部署并挖掘了一个以太坊合约(为了简单起见,我使用了 Truffle 提供的默认 MetaCoin 合约),我得到了 trx 和合约地址。我可以从 Truffle 控制台访问它,但如果我从 Geth Javascript 控制台尝试,我会收到错误消息。

请参考以下图片:

松露控制台

Geth JavaScript 控制台

使用的软件

  • Geth (v1.7.3-stable)
  • NodeJS (v6.12.3)
  • TestRPC (v6.0.3 (ganache-core:2.0.2))
  • 松露 (v4.0.5)
4

1 回答 1

1

Geth 不知道MetaCoin。在 Geth 控制台中,您需要执行以下操作:

var MetaCoin = web3.eth.Contract(metaCoinJsonAbi, itsAddress);
// or web3.eth.contract depending on the version of Web3

然后你就可以使用它了。参考这个

于 2018-01-24T16:55:32.677 回答