温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

如何查询一个比特币地址的所有交易?

发布时间:2020-07-30 00:43:39 来源:网络 阅读:849 作者:小智123 栏目:软件技术

在比特币应用开发中,一个常见的问题就是,在知道比特币地址的情况下,如何查询这个地址上发生的所有交易?或者类似的说法,如何查询一个指定的比特币地址发生的所有交易? 本文将给出这一问题的三种解决方案。

1、将比特币交易数据存入数据库

由于比特币的数据存储结构,不可能直接利用比特币的原始API来查询指定地址的历史交易数据。因此最朴素(Naive)的第一种解决方案,就是将比特币区块链上的每一笔交易数据存到自己的数据库里,然后针对交易地址信息(例如Scriptpubkey、pubkey或者地址本身)建立索引,这样就可以在数据库上自由、高效地查询了。

2、利用第三方的服务

朴素的第一种方案需要自己解析比特币区块链数据,自己搭建数据库环境,可能你觉得有点麻烦。好在有很多第三方机构已经做了这件繁琐的事情,并且通过开放API的形式提供出来,你可以直接使用。

例如,你可以使用blockchain.info的api来实现这个功能:

$ curl https://blockchain.info/rawaddr/$bitcoin_address

3、换一种比特币节点实现软件

如果你不愿意自己搞数据库,也不愿意使用第三方的开放API,还有第三种解决方案,就是换一种支持按比特币地址查询交易的节点实现软件,例如btcd,这是一个go语言实现的比特币节点软件,当你启动btcd时,只要使用--addrindex标志就可以自动建立比特币地址索引了:

$ btcd --addrindex

本文列出的解决用比特币地址查询历史交易的三种解决方案,分别适用于不同的应用场景,你可以根据自己的需要做出相应的选择。

如果要快速掌握比特币的对接与应用开发,推荐汇智网的在线互动课程:

Java比特币开发详解 -----
Php比特币开发详解 -----
C#比特币开发详解


汇智网原创,转载请标明出处

向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI