bitcoined

本文介绍了如何使用 Bitcoin 的 JSON-RPC 接口进行远程过程调用,包括运行 Bitcoin 服务、JSON-RPC 基础知识及具体请求响应格式等。通过简单的示例演示了两数相加的操作。

你给的官方文档是中文翻译的,不全,看看英文的:https://en.bitcoin.it/wiki/API_reference_(JSON-RPC)

0. 下载

不解释了

1. 运行

此章节是中文wiki没有的。英文:https://en.bitcoin.it/wiki/Running_Bitcoin

运行后,Bitcoin 会作为服务启动,就类似 httpd 或者 mysqld 一样,此时 bitcoind 会在 127.0.0.1 监听 8332 端口的请求。

2. JSON-RPC

中文链接有误。

可以在下面链接查看 JSON-RPC:http://json-rpc.org/wiki/specification

顺便在看看 JSON: http://json.org
RPC(Remote Procedure Call)意思是远程过程调用,我们可以在本地直接调用远端的函数和功能,Procedure。调用的格式通常有:

  • XML-RPC: 所有的调用以 XML 格式进行,比较常见的就是 wordpress 的博客客户端,一般都是通过 XML-RPC 发布博客。

  • JSON-RPC:相比 XML 来说,JSON 更加轻量级,于是 bitcoind 使用 JSON-RPC 来和服务器端通讯。

3. 通讯

我们使用客户端操作 bitcoin 时(即和 bitcoin 服务器通讯),不需要引入 bitcoin 提供的任何类库,只需要对应语言的 JSON-RPC 库即可。或者再底层一些,只要有 HTTP 库即可。

JSON-RPC 的官网只提供了 Python 包, 由于我没有使用过 Java 的 JSON-RPC 库,在此我就不推荐了。你可以自行去 github 或者 sourceforge 搜索。

可以看看这个(英文,不过很好理解) http://json-rpc.org/wiki/specification,非常非常的简单,以至于你都不想使用 JSON-RPC 库了,或许一个 cURL 就已经绰绰有余力了。

我大致翻译一下规范:

请求 Request

发送给服务器的请求包括 3 个参数

  • method - 你想要调用的方法
  • params - 方法参数
  • id - 不解释
回应 Response

回应也是 3 个值:

  • result
  • error
  • id
示例

比如服务器端有一个方法,两数相加:add(num1, num2)

我们这样远程调用它

我们向服务器发送一个 json:

{
    "method": "add", 
    "params": [ 1, 2 ], "id": 1 } 

服务器会返回:

 
{
    "result": 3, 
    "error": null, "id": 1 }

转载于:https://www.cnblogs.com/hehe00/p/5985391.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值