上一节提到,以太坊在node start的时候启动了RPC服务,以太坊通过Rpc服务来实现以太坊相关接口的远程调用。这节我们用个实例来看看以太坊 RPC是如何工作的,以及以太坊RPC的源码的实现
一,RPC通信实例
1,RPC启动命令 :
geth --rpc
go-ethereum的RPC服务默认地址:http://localhost:8545/
通过以下命令修改默认地址和端口:
geth --rpc --rpcaddr --rpcport
如果从浏览器访问RPC,CORS将需要启用相应的域集。否则,JavaScript调用受到
同源策略的限制,请求将失败。
geth --rpc --rpccorsdomain “http:// localhost:3000”
也可以使用该命令在geth console 启动
admin.startRPC(addr, port)
2, 用curl模拟RPC请求
我们请求一个最简单的一个eth模块的RPC接口:eth_blockNumber
curl -H "content-Type:application/json" -X POST --data '{"jsonrpc":"2.