Ether
如何確定 Gas 價格和 Gas 使用量?
我實際上有兩個問題:
- 如何確定gas價格?Metamask 為我填寫了這個,但是當我點擊送出時它總是太低。基本上 ETH Gas Station 上的所有值似乎都太低了?需要投入多少 Gas Limit?
- 我通過使用高價值獲得了轉移。但它仍然失敗了。看來我現在損失了 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 成本。