Ropsten
如何估算智能合約部署和交易價格?
我可以在 Ropsten 網路上部署相同的智能合約並在其上呼叫四筆交易。
我如何估算在主網網路上完全相同的操作的價格?
您無需發送任何實際交易即可實現此目的。
//create a web3 instance const web3 = new Web3(Web3.givenProvider || "ws://localhost:8546"); //create contract instance, leave address empty if creating new contract myContract = new web3.eth.Contract(jsonInterface, address, options) //check gas needed to deploy contract myContract.deploy({ data: 'BYTECODE', arguments: [123, 'My String'] }) .estimateGas((err, gas) => { console.log(gas); }); //check gas needed to execute method calls of contract myContract.methods.myMethod(123).estimateGas(function(error, gasAmount){ ... }); //to get current gas price of the network web3.eth.getGasPrice([callback])
在此之後,您可以
gasprice
將網路的 與 的estimated gas
相乘contract deployment
以獲取actual price
要部署的契約,並且您可以對要發送的每筆交易執行此操作
當您在 Ropsten 中發出交易時,您會看到他們的 gas 使用情況。之後,您需要為您在主網中的交易確定正確的gas 價格。在決定合適的汽油價格時,您可以使案例如https://ethgasstation.info/ 。
一旦確定了 gas 價格,您就可以使用相同的計算器來計算交易的實際成本。