Solidity Remix - 主链上的交易失败,但在私有链和备用链上工作

问题描述

我有一个已部署的合约,具有将合约余额释放给所有者的功能。我已经在以太坊克隆链上对此进行了测试,一切都按预期工作正常。但是,当我在以太坊主链上部署合约时,在调用仅当所有者是调用者时才可用的函数时,我得到了失败的交易,这在 10 到 200 Gwei 的任何地方都失败了:

function OwnerWithdraw(uint256 _amountToDraw) public onlyOwner {        
   
    payable(owner).transfer(_amountToDraw);

}

任何帮助将不胜感激。

解决方法

好的,这个问题的答案很简单,我在 Ropsten 和 ETC 主网上测试了代码的修改版本。原来我在 ETC 主网上运行这些函数的 gas 限制设置得太低了。