以太坊接口应用开发JSON-RPC协议

作者: 编程狂魔 | 来源:发表于2018-12-18 12:56 被阅读3次

以太坊应用开发接口指的是以太坊节点软件提供的API接口,去中心化应用可以利用这个接口访问以太坊上的智能合约。以太坊应用开发接口采用JSON-PRC标准,通常是通过HTTP或websocket提供给应用程序调用。

JSON-RPC是一种无状态轻量级远程过程调用(RPC)协议,规范定义了数据结构及相应的处理规则,规范使用JSON(RFC 4627)数据格式,规范本身是传输无关的,可以用于进程内通信、socket套接字、HTTP 或各种消息通信环境。

以太坊应用开发接口的配置

不同节点软件的应用开发接口访问点可能有所区别。常见以太坊节点软件的的默认JSON-RPC端结点如下:

以最常见的geth节点软件为例,可以使用--rpc选项启动其基于HTTP的JSON-RPC应用开发接口。

~$ geth --rpc

可以使用--rpcaddr和--rpcport选项修改默认的监听端口(8545)和监听地址(localhost):

~$ geth --rpc --rpcaddr <ip> --rpcport <portnumber>

如果需要从浏览器中访问RPC接口,需要正确设置CORS,否则由于同源策略的限制,javascript调用将失败:

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

也可以在geth控制台使用admin.startRPC(addr,port)命令来启动JSON RPC。

以太坊应用开发接口的调用

利用标准的HTTP协议就可以调用以太坊应用开发接口,例如在命令行可以使用curl工具:

~$ curl -X POST --data '{"jsonrpc":"2.0","method":"web3_clientVersion","params":[],"id":67}' http://127.0.0.1:8545

你可以点击这里查看以太坊应用开发接口中文手册

以太坊应用开发接口的封装开发包

为便于在不同语言的代码中调用以太坊应用开发接口,以太坊社区涌现了不同语言的开发包,例如:

可以根据你的需要选择合适的开发包来调用以太坊应用开发接口,这样可以大大缩短对接以太坊节点的所需要的时间。

相关文章

  • 以太坊接口应用开发JSON-RPC协议

    以太坊应用开发接口指的是以太坊节点软件提供的API接口,去中心化应用可以利用这个接口访问以太坊上的智能合约。以太坊...

  • 初识以太坊

    序 这篇文章只是简单的认识一下以太坊,目的是快速地进入以太坊应用智能合约开发;随着以太坊应用开发的不断深入,再深入...

  • 2天闭门培训|以太坊智能合约从入门到实战(北京)

    2天培训 16个课时 探寻技术原理,精通以太坊智能合约开发 以太坊智能合约是现在应用的最广泛的区块链应用开发方式...

  • 以太坊入门

    以太坊 以太坊是基于区块链技术的开源软件平台,开发者可以在平台上开发和部署去中心化应用。类似于比特币,以太坊也是一...

  • 以太坊网建立、合约编译、部署

    以太坊网建立、合约编译、部署 在本地建一套以太坊私有链,进行智能合约的开发测试。开发好的智能合约切换接口部署到以太...

  • 分享实录|以太坊开发需知

    1 以太坊开发与传统应用开发的差异 相比起传统应用而言,以太坊开发引入了新的基础设施,由此必不可少的带来了部署和运...

  • 理解以太坊2.0,先理解以太坊2.0核心设计原则

    以太坊技术应用大会昨日在北京举行,V神、以太坊基金会核心成员、以太坊DAPP开发者等重量级嘉宾云集,此次大会以以太...

  • 理解以太坊2.0,先理解以太坊2.0核心设计原则

    以太坊技术应用大会今天在北京举行,V神、以太坊基金会核心成员、以太坊DAPP开发者等重量级嘉宾云集,此次大会以以太...

  • 【区块链基础06】-ERC20协议

    1、什么是ERC20协议? ERC20是一个基于以太坊(Etherenum)代币(Token)的接口标准(协议)。...

  • 附录1 ERC20可交换代币协议

    现在基于以太坊的大部分应用都直接或间接与ERC20协议有关,该协议的本质是将各种数字资产的接口标准化,遵循ERC2...

网友评论

    本文标题:以太坊接口应用开发JSON-RPC协议

    本文链接:https://www.haomeiwen.com/subject/iqokkqtx.html