建议和反馈

请填写你的反馈内容

问答 > 以太坊 > 问答详情

向以太坊智能合约发送价值时出错10LK

我有1.5.2并使用Mist-linux64-0-8-7在testnet上工作。当我尝试通过调用任何函数向我的合同发送一些以太(值)时,我遇到了一个简单的问题。例如,即使这个虚函数不能用于非零值,但通常在零值下工作:

function t() returns (uint){
    return 1;}

令人惊讶的是,我可以在Mist中看到一条警告,其中显示“此交易似乎会失败。如果您提交,它可能会消耗您发送的所有气体。” 这不取决于我提供的气体量。即使我把500,000的天然气交易似乎没有完成。

你可以在这里看到它的结果:https//testnet.etherscan.io/tx/0x3206118530079d1b416dc649c6f0a89283f9457e9189f259b3429cf0c6a998d0

有一条消息

警告!合同执行期间遇到错误[跳转目的地]

我尝试在不同的合同中运行不同的功能。我甚至使用sendTransaction功能直接从geth控制台执行相同操作,但我仍然无法使其工作。我没有发现是否有人有类似的问题。如果您有任何想法,请帮助我。


2019-09-10
0
请先登陆或注册

heart2019-09-11

加上payable试试

投一票
评论(0)
赞赏(0)
区块链社区2019-09-10

Solidity 0.4起:

想要接收以太网的功能必须指定新的应付修改器(否则它们会抛出)。

throw消耗所有气体,所以使用function t() payable returns (uint)


投一票
评论(0)
赞赏(0)

求助中

解决了这个问题,预计可以帮助到

  • 0
  • 1
  • 3
  • 6
  • 9
邀请

感谢您的善举,每一次解答会成为新人的灯塔,回答被采纳后获得20算力和相应的LK币奖励