以太坊和比特币一样,都有一个最长链的概念,因此也有一个交易确认数的概念。当一个以太坊交易所在区块被新加入区块链时,该交易的确认数为1,之后每增加一个区块,该交易的确认数加1。显然,一个以太坊交易的确认数越多,就意味着该交易在区块链中埋的越深,就越不容易被篡改。那么,应该如何获取一个以太坊交易的确认数?
如果要快速掌握以太坊应用开发,推荐汇智网的
以太坊智能合约与DApp开发入门
,
基于在线编程环境完成一个投票DApp的实战开发,有问题还可以咨询助教。
要获取一个以太坊交易的确认数,需要使用两个RPC调用:
eth_getTransactionReceipt:获取交易收据
eth_blockNumber:获取最新区块号
首先利用eth_getTransactionReceipt调用获取指定的交易收据,例如,下面的命令获取交易
的收据:
在结果中可以获取该交易所在区块编号:
然后就可以在随后的任意时刻使用eth_blockNumber调用来获取当前最新块信息,例如:
在结果中可以获取当前最新一个区块编号:
用区块链中最后一个区块的编号,减去交易所在区块编号,再加1,就可以得到一个以太坊交易的确认数了:
使用web3.js获取以太坊交易确认数
基于上面的原理,我们很容易编写web3.js代码来获取以太坊交易确认数:
文章来自官方博客:
领取专属 10元无门槛券
私享最新 技术干货