以太坊雷电网络API官方文档中文版

雷电网络(Raiden Network)是以太坊区块链的链下扩容方案,Raiden节点 的Restful API官方文档中文版由汇智网提供,访问地址: http://cw.hubwiz.com/card/c/raiden-api/

Raiden API访问端结点URL中通常包含有版本信息,以便支持对不同版本API 的访问,所有的API访问URL前缀都是:/api/<version>/

1、API请求/响应数据的JSON编码

API的访问请求与响应都采用JSON编码。下面是API中的常用对象。

1.1 通道 / Channel

通道对象示例如下:

1
2
3
4
5
6
7
8
9
10
11
{
"channel_identifier": 21,
"token_network_identifier": "0x2a65Aca4D5fC5B5C859090a6c34d164135398226",
"partner_address": "0x61C808D82A3Ac53231750daDc13c777b59310bD9",
"token_address": "0xEA674fdDe714fd979de3EdF0F56AA9716B898ec8",
"balance": 25000000,
"total_deposit": 35000000,
"state": "opened",
"settle_timeout": 500,
"reveal_timeout": 40
}

通道对象包含如下字段:

  • channel_identifier:通道的标识,整数
  • partner_address:对方地址, EIP55编码的地址字符串,用来开启一个通道
  • token_address:代币地址,EIP555编码的代币地址字符串,用于通道上的交易
  • token_network_identifier:代币网络标识符,EIP55编码的代币网络标识符
  • balance:可用代币余额,整数
  • total_deposit:已存入通道合约的金额,整数
  • state:通道的当前状态,字符串,可能的值包括:opened - 通道已开启 closed - 通道已关闭 settled - 通道已关闭而且已清算
  • settle_timeout:通道清算超时区块数,整数
  • reveal_timeout:允许的最大揭示超时区块数,整数

1.2 通道事件 / Event

通道事件也编码为JSON对象,事件的参数作为事件对象的属性。为了便于区分不同 类型的事件,在事件对象上额外添加了event_typeblock_number属性。

2、API错误信息

对于不成功的API请求,会返回对应的http状态码,例如409冲突或400错误请求等,同时也 会在返回的json对象中附带errors字段,你可以用来获取关于错误的详细信息。但是,需要指出的 是,如果Raiden不能处理收到的请求并且抛出异常,那么将返回http状态码 500,这时返回的就不是 json对象,而只是一个字符串消息Internal server error。 这是由于我们依赖于其他开发库来 实现API,发生异常时我们无法正常处理响应消息。

无论如何,我们认为500错误是Raiden的bug,如果你碰到这种现象,请反馈给我们。

3、访问端结点

Raiden提供了以下访问端结点,可以在开发时选用: