Ether

如何確定 Gas 價格和 Gas 使用量?

  • March 5, 2020

我實際上有兩個問題:

  1. 如何確定gas價格?Metamask 為我填寫了這個,但是當我點擊送出時它總是太低。基本上 ETH Gas Station 上的所有值似乎都太低了?需要投入多少 Gas Limit?
  2. 我通過使用高價值獲得了轉移。但它仍然失敗了。看來我現在損失了 0.0105 乙太幣(13.66 美元)?有沒有辦法把這個找回來?有沒有辦法不犯這些錯誤?這確實是一個非常高的學習曲線(而且成本很高)。

見:https ://etherscan.io/tx/0x2d68ca04e623509c05713a8b80c857e49cc80d3a71aadebd0aca7eb2511c57cd

感謝您的任何幫助。

我認為你有一些倒退……你設置了 42000 的氣體限制,這顯然是不夠的。您幾乎不應該調整氣體限制,因為它是提前非常準確地確定的。MetaMask 應該為您設置合適的氣體限制。

你還設置了一個非常高的 gas 價格:250 gwei,當https://www.ethgasstation.info/說 80 gwei 應該在 2 分鐘內處理你的交易。

不,沒有辦法取回您為該交易支付的乙太幣。

以後,讓 MetaMask 選擇 gas 限制,並通過檢查https://www.ethgasstation.info/來設置 gas 價格。

編輯

我應該注意,當交易中出現其他問題時,也會發生氣體不足錯誤。某些類型的錯誤可能會導致消耗所有的氣體。(例如assert程式碼中的一個。)

如果您正在尋找像我一樣的歷史交易的天然氣成本,這就是您的答案。

gasCost(tx) = gasPrice * gasUsed

您可以使用 web3 獲取所需的 2 條資訊,但您將進行 2 次不同的呼叫:

web3.eth.getTransaction(txHash)

返回一個包含gasPrice.

web3.eth.getTransactionReceipt(txHash)

返回一個包含gasUsed.

將這兩部分結合起來,您就有了特定歷史交易的 gas 成本。

引用自:https://ethereum.stackexchange.com/questions/35783