通过矿工地址(address),获取发生的所有交易的hash值,和该矿工所打包的区块
来源:互联网 发布:郑州中大门网络 编辑:程序博客网 时间:2024/06/05 00:17
以太坊Go-ethereum客户端是没有根据地址查询交易列表的API的。然而,在使用过程中我们往往会用到类似的API。针对是否要在客户端上添加此API,github已经有激励的讨论了。点击一下网址可以了解一下:
https://github.com/ethereum/go-ethereum/issues/1897
两个思路,但是都避免不了遍历所有数据手动收集区块链交易来实现这一功能。或者,你可以依赖第三方探索者的API,如EtherChain。 对于合约执行的交易,可以筛选合约日志以实现此目的。
- 通过Json Rpc去遍历所有区块,把指定地址的交易 和 此地址所打包的区块筛选出来,此方法效率比较低,但是实现起来比较简单,对于无存量数据的处理还是可以的,比如比特币,10分钟才出一个新块,那么通过Json Rpc去请求上一个块中所有数据还是戳戳有余的。调用第三方API接口。此类接口很多,不仅能在官网上查询区块信息,而且提供了查询的API。比如:https://etherchain.org/apidoc 。接口都很简单,不过有访问频次的限制,除非很大的访问量,还是可以使用此类接口。简单,方便。
- 直接解析账本数据文件,此方法效率较高,但是实现起来较为复杂一点,特别是对于有大量存量数据的情况,推荐这个方法。自行维护数据,自行实现此功能。此方法的基本思路是,查询每个区块的具体交易,录入到自己的数据库中,然后通过sql语句查询自己的数据。此方法就需要有一定的编码基础和设备投入。现有的API是支持查询每一个区块内的交易记录的。虽然比较笨重,但一旦数据由自己维护之后,想怎么查询只是sql语句不同的事情了。
筛选出来的数据一般是存储在关系型数据库中,方便对接你的业务,所以你可能还需要根据实际情况,把表先建好。
例外情况
如果要查询合约的交易历史,那么可以通过过滤(filter)合约日志来达到此目的。此种场景是有相应的API进行支撑的。
阅读全文
0 0
- 通过矿工地址(address),获取发生的所有交易的hash值,和该矿工所打包的区块
- RQNOJ愚蠢的矿工
- [codevs1418]愚蠢的矿工
- 做一个聪明的矿工
- 从矿工到农民的失落感
- 愚蠢的矿工--树形动态规划
- 简单的BFS:矿工冒险记
- 清除wnTKYg 挖矿工木马的过程?
- [矿工]重组的中国联通,何以对抗即将到来的混战
- [矿工]电信重组大格局,中国联通的攻守之道
- 美国总统奥巴马悼念死亡矿工的讲话
- 美国总统悼念遇难矿工的讲话---我们可以对比一下
- [gpu pro]矿工战争的可破坏volumetric地形系统
- rnqoj-30- [stupid]愚蠢的矿工-树形DP
- 清除wnTKYg 这个挖矿工木马的过程讲述
- 清除wnTKYg 这个挖矿工木马的过程讲述
- 清除wnTKYg 这个挖矿工木马的过程讲述
- 新淘金时代:内蒙古比特币矿工的“淘金生活”
- WCHAR,CHAR,TCHAR的区别
- html5判断文字是否有下划线
- 欢迎使用CSDN-markdown编辑器
- java关键字学习
- SQL一次性查询一个字段不同条件下的统计结果
- 通过矿工地址(address),获取发生的所有交易的hash值,和该矿工所打包的区块
- idea搭建MyBatis
- 软件架构之 23种设计模式
- PB:数据保存失败
- 【Eternallyc】函数reverse的基本用法
- 自定义View的5中滑动方式
- 关于django model postgres的json字段编码问题
- 添加好友(快速幂取模)
- 鼠标的翻译