你好,欢迎收听众享区块链大讲堂,今天我们要讲的是以太坊的常用接口。
前两周我们学习了solidity编程,solidity编程是发布智能合约的工具,只有学会了solidity,我们才能快速在以太坊上发布我们自己的智能合约。
这周我们要学习以太坊的各种交互方式以及相关接口,今天的课程里我们先讲解RPC接口。
什么是RPC接口
RPC(Remote Procedure Call),即远程过程调用,不要求使用者了解底层网络技术,通过网络从远程计算机程序上请求服务的协议。RPC协议假定某些传输协议的存在,如TCP或UDP,为通信程序之间携带信息数据。在以太坊中所用的协议是HTTP协议。
RPC采用客户机/服务器模式。请求程序就是一个客户机,而服务提供程序就是一个服务器。首先,客户机调用进程发送一个有进程参数的调用信息到服务进程,然后等待应答信息。在服务器端,进程保持睡眠状态直到调用信息到达为止。当调用信息到达时,服务器获得进程参数,计算结果,发送答复信息,然后等待下一个调用信息。最后,客户端调用进程接收答复信息,获得进程结果,然后调用执行继续进行。
在以太坊的RPC调用过程中使用的数据格式是JSON(RFC 4627)。
具体的RPC接口
先介绍接口中会用到的一个参数:交易对象
它包括下面几个参数
from : 交易发送方地址 (可选)
to : 交易接收方地址 (可选)
gas : 执行模拟操作所需gas数量 (可选)
gasprice : gas的价格 (可选)
value: 交易涉及的金额 (可选)
data : 智能合约数据 (可选)
nonce:与from相关的序号 (可选)
领取专属 10元无门槛券
私享最新 技术干货