为什么煤气费不起作用?如果我不收煤气费,交易就成功了。但是,如果我添加了一个gas,事务就会失败并返回错误:
{“代码”:-32000,“消息”:“内部气体太低”}
web3matic = Web3(Web3.HTTPProvider(matic))
nonce = web3matic.eth.get_transaction_count(walletAddress)
result = contract.functions.buy(item, int(price)).buildTransaction({
'from': walletAddress,
'nonce': nonce,
'gas': 21000,
'gasPrice': web3matic.toWei(700, 'gwei'),
})
print(result)发布于 2022-03-24 06:50:21
问题是'gas': 21000,21000是任何事务所需的最小气体量,这取决于智能契约的复杂性,它可以达到> 1,000,000。
气体限制是指你愿意在一项交易中消耗的最大气体量。
21000是对Ethereum的操作将使用的最小气体量。
因此,由于气体限制代表了您的操作可以使用的最大气体量,并且您的函数需要超过21000,所以您必须删除这个值(它将自动计算)或增加它。
https://ethereum.stackexchange.com/questions/124545
复制相似问题