gpt4 book ai didi

javascript - 在发送交易之前如何估计当前的gas limit?

转载 作者:行者123 更新时间:2023-12-02 23:30:11 33 4
gpt4 key购买 nike

具体来说,我希望我的 node.js 能够将 ERC721 代币发送到另一个钱包。有时,汽油价格很高,我的交易会卡在那里几个小时。在这些情况下,我希望我的 Node.js 使用更多的 Gas 来按时发送 token 。

我尝试获取最后一个区 block 的 Gas 限制,但它似乎总是太低。

  var count = web3.eth.getTransactionCount(sender);

var rawTransaction;

var block = web3.eth.getBlock("latest");
var currGas = block.gasLimit;
currGas = currGas.toString(16);
currGas = '0x' + currGas;

if(isSending){
rawTransaction = {
"from": sender,
"nonce": web3.toHex(count),
"gasPrice": currGas,
"gasLimit": "0x3A980",
"to": skyDropContract,
"value": "0x0",
"data": myContractABI.startGame.getData(index, {from: sender}),
"chainId": 0x01
};
}

我正在使用 web3@0.20.0,但如果我确实需要的话可以切换版本。有没有办法在发送之前估算我的交易成本?我什至可能会比当前的估计成本多出 1 gWei。

最佳答案

尝试estimateGas()web3 1.0:

myContract.methods.startGame(index)
.estimateGas(
{
from: _from,
gasPrice: _gasPrice
}, function(error, estimatedGas) {
}
)
});

关于javascript - 在发送交易之前如何估计当前的gas limit?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56549912/

33 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com