Infura开发手册

API请求格式

注意:用你自己的项目ID替换代码中的YOUR-PROJECT-ID。

JSON RPC API请求

下面是使用curl访问infura api的示例:

curl -X POST \
-H "Content-Type: application/json" \
--data '{"jsonrpc": "2.0", "id": 1, "method": "eth_blockNumber", "params": []}' \
"https://mainnet.infura.io/v3/YOUR-PROJECT-ID"

响应结果应当类似下面这样:

{"jsonrpc": "2.0","result": "0x657abc", "id":1}

注意:"0x657abc"将会被你执行命令时网络的实际区块号替代。

需要指出的重要一点是,JSON-RPC请求是与传输层无关的,同样的请求可以 通过HTTPS、WebSockets或者其他消息传输环境发送。例如,下面使用websockets 发送同样的请求:

wscat -c wss://mainnet.infura.io/ws/v3/YOUR-PROJECT-ID
> {"jsonrpc": "2.0", "id": 1, "method": "eth_blockNumber", "params": []}
< {"jsonrpc":"2.0","id":1,"result":"0x657abc"}

订阅与过滤器

注意,较新的、实验性质的以太坊pub/sub订阅机制仅在有状态传输层实现 (例如Websockets)上得到支持。Infura不支持通过Https调用与订阅和过滤器 相关的API。