如何使用 MetaMask 加速或取消未决交易
当我们在区块链上提交交易时,我们通常会在区块链的原生代币中支付一笔gas费。
这一费用往往会根据市场条件自动调整,即区块链本身对区块空间的需求,但如果交易卡住了很长一段时间,它也可以通过向网络竞价来手动调整,以便更快地处理我们的交易。
在本文中,我们将解释如何加速长时间待处理的被卡住的交易,或者完全取消交易。
如何加快与 MetaMask 区块链交易
在MetaMask上发送交易后,一个新交易将被添加到队列中。将它添加到队列后,我们将看到两个按钮——speed up和cancel。
在单击Speed Up按钮之前,单击交易并在区块链浏览器上查看交易详细信息。
Etherscan.io 上的示例交易详情
请注意,“Estimated Confirmation Duration”将显示在区块链上确认交易大约需要多长时间。
通常,如果交易是用市场费用发送的,它会很快被结算。但是,如果由于网络利用率突然飙升而花费的时间太长,那么我们可能希望在需要时加快速度。
点击“Speed Up”按钮,我们就可以重新提交相同的交易,但会收取更高的gas费,这应该会让交易处理得更快。
我们会想要发送一个交易与gas费用,以便它在接下来的几个区块内被处理。要做到这一点,可以使用像Blocknative的gas估算器这样的服务。
Blocknative gas估算器
Blocknative gas 估算器可以让我们看到推荐的优先费用和最大费用设置(我们没有EIP-559),以及在下一个区块(即15秒)内完成交易的概率。
要了解更多细节,我们也可以在同一页面上查看他们的Heat map,以显示一天中特定时间的平均gas价格。
确保在我们发送更高优先级的交易之前检查这些资源,以避免支付过多的gas费用。
如何使用 MetaMask 取消交易
取消交易最简单的方法是在上面的交易窗口中选择“cancel”而不是“speed up”。
但是,交易取消只能在交易仍在网络上是待处理的情况下进行。如果交易已经被区块链确认,则不可逆。取消交易的更高级的方法是使用自定义的nonce。
转到MetaMask的Advanced设置并启用自定义交易nonce。
此外,启用Advanced中gas控制配置和覆盖默认gas设置。
打开这两个选项后,发送一个新交易。在我们的例子中,我们将发送一个0 ETH 交易给我们自己。
将我们现有的公共地址粘贴到搜索框中。
输入0 ETH。
在我们的账户上查找区块链上的未决交易,并确定两件事:
-
交易的nonce(这里是73)
-
gas费和最高优先权费(这里是60和1.5)
输入与待处理交易相同的自定义Nonce字段。
通过点击Market按钮来调整gas。
选择“Advanced”,确保使用比上次交易更高的gas费。
单击Save,然后单击Confirm以发送交易。
这些步骤允许区块链比原始的待处理交易更快地接收我们的取消请求,因为gas量更高。
一般来说,这些交易要想成功,最好设置的最大费用至少比我们取消的交易高25%到30%。
Source:https://medium.com/stakingbits/how-to-speed-up-or-cancel-a-pending-transaction-with-metamask-4de3e8b08ea4