Chia RPC API中文文档

Chia RPC API官方文档中文版由汇智网翻译整理,访问地址:http://cw.hubwiz.com/card/c/chia-rpc/

1、Chia RPC API 概述

Chia节点内置JSON RPC API服务,开发人员可以用来获取区块链信息并加以控制。可以通过HTTP、WebSockets或Python客户端访问这些API。RPC API的端口可以在~/.chia/mainnet/config/config.yaml配置文件中进行设置。注意RPC API端口不要在互联网上暴露,出于安全性考虑,Chia使用TLS证书用于对通信进行加密。

Chia RPC API默认端口如下:

  • Daemon/后台服务: 55400
  • Full Node/全节点: 8555
  • Farmer/农夫: 8559
  • Harvester/收割人: 8560
  • Wallet/钱包: 9256

从命令行调用RPC API时必须使用证书,请确保使用了正确的证书。所有的访问端节点都是使用JSON数据进行POST请求,响应结果是一个JSON字典,其中的success字段可以是true或false。

如果你使用Websockets API,可以直接利用Daemon来路由请求。每一个WebSocket消息都包含以下字段:

{
    "command": "get_blockchain_state",
    "ack": false,
    "data": {},
    "request_id": "123456",
    "destination": "wallet",
    "origin": "ui",
}

大多数RPC方法可以通过src/rpc下的不同client对象来访问。可以访问Chia的命令行实现来了解其使用方法,例如chia wallet、chia show等等。

可以在这里查看JavaScript客户端实现: https://github.com/freddiecoleman/chia-client

2、Chia RPC API目录

FullNode Api

  • get_blockchain_state:查询区块链状态
  • get_block:查询指定区块
  • get_blocks:查询指定高度区间的区块
  • get_block_record_by_height:查询指定高度的区块记录
  • get_block_record:查询指定哈希的区块记录
  • get_block_records:查询指定高度区间的区块记录
  • get_unfinished_block_headers:查询未完成区块
  • get_network_space:查询网络总空间
  • get_additions_and_removals:查询添加和删除记录
  • get_initial_freeze_period:查询初始冻结期
  • get_network_info:查询网络信息
  • get_coin_records_by_puzzle_hash:查询指定哈希的coin记录
  • get_coin_record_by_name:查询指定名称的coin记录
  • push_tx:提交交易
  • get_all_mempool_tx_ids:返回内存池全部交易ID
  • get_all_mempool_items:返回内存池全部交易
  • get_mempool_item_by_tx_id:返回内存池指定交易

Wallet Api

  • log_in:登录钱包
  • get_public_keys:查询根公钥
  • get_private_key:查询根私钥
  • generate_mnemonic:生成助记词
  • add_key:添加私钥
  • delete_key:删除私钥
  • delete_all_keys:删除全部私钥
  • get_sync_status:查询钱包同步状态
  • get_height_info:查询钱包高度信息
  • farm_block:模拟耕种区块
  • get_initial_freeze_period:查询初始冻结周期
  • get_network_info:查询网络信息
  • get_wallets:查询私钥地址
  • create_new_wallet:创建新钱包
  • get_wallet_balance:查询钱包余额
  • get_transaction:查询指定交易记录
  • get_transactions:查询交易记录
  • get_next_address:返回下一个地址
  • send_transaction:发送交易
  • create_backup:创建钱包备份
  • get_transaction_count:查询钱包交易数量
  • get_farmed_amount:查询奖励信息

Harvester Api

  • get_plots:查询全部绘图
  • refresh_plots:刷新绘图
  • delete_plot:删除绘图
  • add_plot_directory:添加绘图目录
  • get_plot_directories:查询绘图目录
  • remove_plot_directory:删除绘图目录

Farmer Api

  • get_signage_point:查询指定的signage点
  • get_signage_points:查询signage点清单
  • get_reward_targets:查询耕种目标地址
  • set_reward_targets:设置耕种目标地址

公共Api

  • get_connections:查询连接节点
  • open_connection:连接节点
  • close_connection:断开节点连接
  • stop_node:终止节点运行

你可能感兴趣的:(区块链)