web3 encodeFunctionCall不起作用在1个事务中一起2个特定的函数调用不起作用

问题描述

我正在尝试使用web3 encodefunctionCall在同一事务中从deposit执行withdrawyDAI (yearn.finance)函数deposit函数有效,但是withdraw函数失败。但是,如果我单独执行withdraw函数,那么它将起作用。

let abi1 = web3.eth.abi.encodefunctionCall( { "name": "deposit","type": "function","inputs": [ { "name": "_amount","type": "uint256" } ] },[web3.utils.toWei((1000).toString(),'Ether')] );

let abi2 = web3.eth.abi.encodefunctionCall( {"constant":false,"inputs":[],"name":"withdrawAll","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},[] );

我将上述内容编码为js文件,然后使用数组调用智能合约中存在的函数。智能合约中存在的代码

for (uint i = 0; i < _addrs.length; i++)
    address(_addrs[i]).call(_bytecode[i]);

没有错误消息。

这是yDAI (yearn.finance)代码和abi。

https://etherscan.io/address/0xACd43E627e64355f1861cEC6d3a6688B31a6F952#code

有人可以帮我解决这个难题吗?

关于, ish

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)

相关问答

Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其...
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。...
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbc...