首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >问答首页 >如何将我的交易气体设置为0.5乙醚?

如何将我的交易气体设置为0.5乙醚?
EN

Ethereum用户
提问于 2021-07-23 20:58:01
回答 2查看 1.4K关注 0票数 0

我正试图把我的气体调到0.5乙醚,但我不知道怎么做。我这里有一个交易tx:

代码语言:javascript
代码运行次数:0
运行
复制
var tx = {
        to: "0x73E7D230586B118898aA1FB95FAA6E4119FA0996",
        value: ethers.utils.parseEther("0.01"),
        gasPrice: ethers.utils.parseUnits('10', 'gwei'),
        gasLimit: ethers.utils.parseUnits('0.5', 'ether')
    }

它给了我这个错误Error: tx fee (5000000000.00 ether) exceeds the configured cap (1.00 ether)

汽油价格和汽油限值是多少?

谢谢!

EN

回答 2

Ethereum用户

发布于 2021-07-30 01:02:49

代码语言:javascript
代码运行次数:0
运行
复制
Gas cost of a transaction = gas consumed * gas price

在正常的eth转移过程中,气体消耗为21000。所以现在你必须设定汽油价格,使乘数为0.5ETH。

代码语言:javascript
代码运行次数:0
运行
复制
var tx = {
  to: "0x73E7D230586B118898aA1FB95FAA6E4119FA0996",
  value: ethers.utils.parseEther("0.01"),
  gasPrice: ethers.utils.parseEther('0.5').div(21000), // 0.5 ETH divided by 21000
}

没有必要设置gasLimit值,ethers.js为您估算它。(Ethers.js会自动为您放置gasLimit: 21000 )。

注:由于0.5ETH不能完全除以21000,所以总气体消耗量为0.49999 ETH --差不多。

票数 0
EN

Ethereum用户

发布于 2021-07-30 03:15:39

gasLimit是交易使用的气体单位数,而不是该气体的实际价值。您的代码所要做的是使用0.5* 10 ^18气体单元创建一个气体成本为10 gwei (0,00000001醚)/gas单位的事务。实际上,交易成本为0.00000001×0.5x10^18=50亿ETH (也许这有点过高)。然而,由于您的交易是一个简单的转移,它不会实际消耗超过21000单位的气体。如果你真的想支付0.5ETH的燃气费(我看不出有什么原因,但无论你的船是什么浮动),你需要设定汽油价格(而不是限价),所以你的汽油价格x 21000 =0.5ETH。O5ETH是5000000000微卫,所以你的汽油价格需要5000000000/21000 = 238095微卫。

票数 0
EN
页面原文内容由Ethereum提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://ethereum.stackexchange.com/questions/103985

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档