1

我正在用 Ruby 学习以太坊区块链并使用这个库:

https://github.com/EthWorks/ethereum.rb

我按照指南并在此处使用文件 greeter.sol:

https://github.com/marekkirejczyk/ruby_ethereum_example/blob/master/contracts/greeter.sol

但我总是得到这个错误:

invalid argument 0: json: cannot unmarshal non-string into Go struct field SendTxArgs.from of type common.Address

这是我当前的代码

contract = Ethereum::Contract.create file: File.join(File.dirname(__FILE__), '../contracts/greeter.sol')
address = contract.deploy_and_wait("Hello from ethereum.rb!")

任何人都可以帮助我,我对此很陌生。

谢谢。

4

1 回答 1

4

可能您应该指定default_accountfor client(sender address)

就我而言,我以这种方式添加了它:

client = Ethereum::IpcClient.new("your path to .ipc", true)
client.default_account = '0xa9db3f4efe....'

然后

contract = Ethereum::Contract.create( abi: abi, name: name, client:client, address: address)
于 2018-02-23T14:54:24.423 回答