千家信息网

JSON RPC API怎么开启

发表于:2024-11-26 作者:千家信息网编辑
千家信息网最后更新 2024年11月26日,本篇内容介绍了"JSON RPC API怎么开启"的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!Get
千家信息网最后更新 2024年11月26日JSON RPC API怎么开启

本篇内容介绍了"JSON RPC API怎么开启"的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!

Geth 使用JSON数据格式, JSON-RPC协议作为客户端和网络进行交互的方法。 Geth 1.4 的 pub/sub 是实验性质的, 同样, Partity 1.6 也是。

JavaScript API

使用web3.js和etherenum节点交互时, 遵循一致的RPC协议.

JSON-RPC Endpoint

默认的JSON-RPC终端:

Client URL

C++ http://localhost:8545

GO http://localhost:8545

Py http://localhost:4000

Parity http://localhost:8545

Go

可以通过 --rpc 标志开启HTTP JSON-RPC

geth --rpc

可以通过下面的方式修改默认的端口(8545)和地址(localhost):

geth --rpc --rpcaddr   --rpcport 

如果通过浏览器访问RPC, 需要注意跨域问题, 可以通过一下方式:

geth --rpc --rpccorsdomain "http://localhost:3000"

JSON-RPC也可以通过 geth console 开启, 如下:

admin.startRPC(addr, port)

C++

首先运行aleth启动节点:

build/aleth/aleth

然后开启JSON-RPC代理(默认 ~/.ethereum/geth.ipc 和 http://127.0.0.1:8545)

scripts/jsonrpcproxy.py

如果你使用非默认的IPC路径或者JSON-RPC, 可以指定:

scripts/jsonrpcproxy.py    

Python

在Python中, JSONRPC服务默认开启的端口和地址是127.0.0.1:4000

可以通过如下方式配置:

pyethapp -c jsonrpc.listen_port=4002 -c jsonrpc.listen_host=127.0.0.2 run

JSON-RPC 支持情况

cpp-ethereum :JSON-RPC 1.0 JSON-RPC 2.0 Batch requests HTTP IPC

go-ethereum :JSON-RPC 2.0 Batch requests HTTP IPC WS

py-ethereum :JSON-RPC 2.0 Batch requests HTTP

patity :JSON-RPC 2.0 Batch requests HTTP IPC WS

十六进制值编码 HEX value encoding

目前, 有2中主要的数据烈性用于JSON, unformatted byte arrays 和 quantities, 他们都是通过hex编码传递的。

默认block 参数

下面的方法有一个额外的默认的block参数:

  • eth_getBalance

  • eth_getCode

  • eth_getTransactionCount

  • eth_getStorageAt

  • eth_call

当请求访问erhereum的状态时, 最后默认的block参数决定了block的高度,该选项可以是一下的取值, defaultBlock:

  • HEX String 一个integer block 值

  • String "earliest" 用于earliest/genesis block

  • String "latest" 用于最近挖出的block

  • String "pending" 用于pending 的 state/transactions

Curl 例子解释

curl 命令参数中 --data 默认指定数据类型为 application/x-www-form-urlencoded, 如果是其他的格式, 需要手动指定, 例如: -H "application/json" , 最后面必须跟 URL/IP 和 端口, 例如 : curl e.x. 127.0.0.1:8545

"JSON RPC API怎么开启"的内容就介绍到这里了,感谢大家的阅读。如果想了解更多行业相关的知识可以关注网站,小编将为大家输出更多高质量的实用文章!

0