OKTC JSON-RPC API 完整指南:方法与使用详解

·

OKTC(OKX Chain)作为高性能的区块链网络,提供了全面的JSON-RPC接口,允许开发者与区块链进行交互。本文将详细介绍OKTC支持的JSON-RPC方法、命名空间及其具体使用方法,帮助开发者高效构建去中心化应用。

网络端点与基本信息

主网端点

OKTC主网的链ID为 0x42(十进制66),JSON-RPC服务可通过以下端点访问:

https://exchainrpc.okex.org/

第三方服务提供商

除了官方端点,开发者也可选择可靠的第三方RPC服务提供商,以获得更稳定的服务或额外的功能支持。

核心JSON-RPC方法概览

OKTC兼容以太坊的JSON-RPC标准,支持大多数常用的方法。以下表格按命名空间分类,列出了所有支持与不支持的方法:

方法名命名空间是否支持说明
web3_clientVersionWeb3支持获取Web3客户端版本
web3_sha3Web3支持计算给定数据的Keccak-256哈希
net_versionNet支持返回当前网络ID
net_peerCountNet不支持-
eth_protocolVersionEth支持返回以太坊协议版本
eth_syncingEth支持返回同步状态信息
eth_gasPriceEth支持返回当前Gas价格(OKT计价)
............
提示:区块高度参数可以输入为十六进制字符串、"earliest""latest""pending"

启动HTTP JSON-RPC服务

推荐使用 curl 命令与HTTP JSON-RPC服务进行交互。例如,查询当前区块高度:

curl -X POST --data '{"jsonrpc":"2.0","method":"eth_blockNumber","params":[],"id":1}' https://exchainrpc.okex.org/

此外,你也可以使用Geth客户端。请从官方地址下载或从源码构建

👉 查看实时链上数据工具

常用方法详解

Web3方法

web3_clientVersion

返回当前Web3客户端的版本信息。

示例请求

{
  "jsonrpc": "2.0",
  "method": "web3_clientVersion",
  "params": [],
  "id": 1
}

web3_sha3

返回给定数据的Keccak-256哈希值(非标准SHA3-256)。

参数

示例请求

{
  "jsonrpc": "2.0",
  "method": "web3_sha3",
  "params": ["0x68656c6c6f20776f726c64"],
  "id": 1
}

Eth方法

eth_gasPrice

返回当前的Gas价格,以OKT为单位。

示例请求

{
  "jsonrpc": "2.0",
  "method": "eth_gasPrice",
  "params": [],
  "id": 1
}

eth_getBalance

返回指定账户地址在特定区块高度的余额。

参数

示例请求

{
  "jsonrpc": "2.0",
  "method": "eth_getBalance",
  "params": ["0x407d73d8a49eeb85d32cf465507dd71d507100c1", "latest"],
  "id": 1
}

eth_sendTransaction

发送交易从指定账户到另一个账户。

参数

WebSocket方法

eth_subscribe

使用JSON-RPC通知订阅特定事件,允许客户端等待事件而不是轮询查询。

参数

eth_unsubscribe

使用订阅ID取消事件订阅。

参数

个人账户方法

personal_newAccount

生成新私钥并将其存储在密钥库目录中,密钥文件使用给定密码加密。

参数

personal_unlockAccount

从密钥库解密指定地址的密钥。

参数

交易池方法

txpool_content

返回当前等待包含在下一个区块中的所有交易的详细信息。

txpool_inspect

以文本格式返回交易池中所有交易的摘要信息。

txpool_status

返回当前等待包含在下一个区块中的交易数量。

常见问题

OKTC支持哪些JSON-RPC方法?

OKTC支持大多数以太坊标准的JSON-RPC方法,包括web3、net、eth、personal和txpool命名空间中的核心方法。具体支持情况请参考上文中的详细表格。

如何查询OKTC上的账户余额?

使用eth_getBalance方法,传入账户地址和区块高度参数(如"latest")即可查询指定账户在特定区块的余额。

OKTC的Gas价格如何获取?

通过调用eth_gasPrice方法可以获取当前网络的Gas价格,返回值为以OKT计价的Gas价格。

如何发送原始签名交易?

使用eth_sendRawTransaction方法可以发送已签名的原始交易数据,这通常用于离线签名场景。

OKTC支持事件订阅吗?

是的,通过WebSocket的eth_subscribe方法可以订阅新区块、待处理交易等事件,避免频繁轮询。

交易池信息如何查询?

OKTC提供了txpool_contenttxpool_inspecttxpool_status三个方法,用于查询交易池中的详细交易信息、摘要信息和交易数量统计。

👉 获取更多开发工具与资源

通过本文介绍的JSON-RPC方法,开发者可以充分利用OKTC区块链的功能,构建强大的去中心化应用。建议在实际开发中结合具体业务需求,选择合适的方法进行调用和优化。