multisig wallet submitTransaction

时间:2018-03-23 09:27:04

标签: ethereum truffle web3

我有一份智能合约MyContract,它由multisig钱包(Gnosis)拥有。当我从multisig钱包上的web3 / testrpc提交事务以使用其参数从MyContract执行函数,并确认事务时,它是MyContract的最终执行的回退函数。因此,似乎将作为原始数据传递给Gnosis submitTransaction方法的函数调用没有得到很好的解释。我已经尝试了两种获取交易数据的方法,两者都给出了相同的结果:

MyContract中我希望通过Multisig在mycontract2实例上执行的函数:

function setTransferOperator(address newOperator)

使用ethereumjs-abi lib生成的数据:

 var data = abi.methodID('setTransferOperator', ['address']).toString('hex') + abi.rawEncode(['address'], [accounts[8]]).toString('hex'); 
 return gnosiswallet.submitTransaction(mycontract2.address, 0, data, {from: accounts[0]});

使用松露生成相同的数据:

var data2 = mycontract2.setTransferOperator.request(accounts[8]);

当mycontract2归标准帐户所有时,带有数据的事务在一个简单的情况下成功

0 个答案:

没有答案