用 ethers.js 发送高 gas 的替换交易

译文出自:登链翻译计划

译者:aisiji

概述

有时,在以太坊上提交的交易没有足够的gas,因为网络拥堵或有太多的待处理交易提供了比你的交易报价更高的gas价格。如果你有一个高优先级的交易,但由于gas不足,可能最终不得不等待数小时甚至数天才能打包结算。在这种情况下,你需要用更高的gas价格和相同的nonce重新发送交易,以使它尽早被打包。

本文中,我们将在以太坊测试网上用ethers

);});

声音 | 实名制起作用 韩国泡菜溢价不再:韩国金融监管委员会副主席金永男近日出席瑞士巴塞尔金融稳定委员会(FSB)一次会议时表示,自韩国禁止匿名交易加密货币以来,泡菜溢价已不复存在。并透露目前韩国政府正在推出一项新的指导方针,以防止本地加密交易所在外汇交易中购买加密货币。[2018/6/30]

然后,用上面一节中的HTTP提供者替换ADD_YOUR_ETHEREUM_NODE_URL。

简单解释一下上面的代码:导入之前安装的ethers库,设置以太坊节点URL,实例化一个ethersJsonRpcProvider实例,创建一个特定的钱包的私钥,可以是任何数字,并确保它包含相同位数。用私钥创建一个以太坊的钱包实例,在控制台中打印钱包地址,创建一个交易对象并在to字段中添加接收者的地址,你也可以用varwallet=Wallet.createRandom();生成一个随机地址,在value字段设置要发送的ETH的价值,在chainId字段,因为我们使用的是Kovan,设置为42,nonce字段设置为3,根据节点估计gasLimit并设置gas价格,用钱包的私钥为交易签名并发送,同时在控制台打印该交易。

运行一下:

nodeindex.js

我们会得到一个类似这样的输出:

复制hash字段的字符串并粘贴到Kovan浏览器的搜索框中,以检查交易的状态。你会看到,该交易尚未被添加到区块链上的新区块中,是等待状态。这是因为我们设置的gas值明显偏低。

现在,我们尝试用相同的nonce发送相同的交易,但这次是增加gas值;将代码中第15行的gasPrice值从0.14085197改为2.14085197并重新运行代码:

nodeindex.js

复制新输出的ash字段的字符串,并将其粘贴到Kovan浏览器的搜索框中,再次检查交易的状态。这一次,我们的交易成功被添加到区块中,并且状态为成功,因为我们在发送交易时增加了gasPrice值。

注意:nonce值在两次交易中是相同的。如前所述,nonce是一个以太坊地址的交易数量。为了重新提交一个有更多gas的交易,你必须使用与原始交易相同的nonce。如果你使用增加的nonce,这将是一个新的交易,那么你的发送ETH会比你的想象的更多。

结论

因此,正如我们在上面的例子中看到的,交易的gas价格是用于竞争交易优先打包权。区块链上的矿工通常会根据可用的区块空间占有率来设置gas,当有一笔交易的gas低于阈值gas值时,它不会被验证。与其他交易相比,gas值较高的交易会很快得到验证。

本翻译由CellETF赞助支持。

参考资料

登链翻译计划:https://github.com/lbc-team/Pioneer

aisiji:https://learnblockchain.cn/people/3291

gas:https://learnblockchain.cn/2019/06/11/gas-mean

ethers.js:https://learnblockchain.cn/docs/ethers.js/

函数选择器:https://learnblockchain.cn/docs/solidity/abi-spec.html#abi-function-selector

以太坊主要网络chainId及NetworkID:https://learnblockchain.cn/article/1791

以太坊签名和验证签名:https://yos.io/2018/11/16/ethereum-signatures/

以太坊签名和验证:https://medium.com/@angellopozo/ethereum-signing-and-validating-13a2d7cb0ee3

官方网站:https://nodejs.org/en/

node-gyp安装说明:https://github.com/nodejs/node-gyp#installation

ethers.js指南:https://www.quiknode.io/guides/web3-sdks/how-to-connect-to-ethereum-network-with-ethers-js

Kovan水龙头:https://faucet.kovan.network/

QuikNode提供的免费节点URL:https://www.quiknode.io/?utm_source=learnblockchain.cn

Kovan浏览器:https://kovan.etherscan.io/

Kovan浏览器:https://kovan.etherscan.io/

CellETF:https://celletf.io/?utm_souce=learnblockchain

免责声明:作为区块链信息平台,本站所发布文章仅代表作者个人观点,与链闻ChainNews立场无关。文章内的信息、意见等均仅供参考,并非作为或被视为实际投资建议。

本文来源于非小号媒体平台:

登链社区

现已在非小号资讯平台发布105篇作品,

非小号开放平台欢迎币圈作者入驻

入驻指南:

/apply_guide/

本文网址:

/news/10431651.html

免责声明:

1.资讯内容不构成投资建议,投资者应独立决策并自行承担风险

2.本文版权归属原作所有,仅代表作者本人观点,不代表非小号的观点或立场

上一篇:

每周编辑精选WeeklyEditors'Picks

郑重声明: 本文版权归原作者所有, 转载文章仅为传播更多信息之目的, 如作者信息标记有误, 请第一时间联系我们修改或删除, 多谢。

银河链

DOTCoinUp:元宇宙解析“未来天堂”

2021年已然走过了3个季度,我国的北方都已经开始供暖准备迎接寒冬了,而近期业态的发展却似乎有些乍暖还寒的意味,ZF的强势监管来袭,但一众主流却逐步收复了失地,作为行业标杆的“大饼”甚至有再创新高之势.

[0:31ms0-1:999ms