【以太坊】ganache-cli和web3配合,操作以太坊客户端

一、前言

      大家都知道,我们操作以太坊都是用geth客户端。但是在测试网络上,必须要同步完成才能进行相应的操作。同步区块,第一是需要服务器的性能足够,我这边好像是是8G4核的服务器,同步了一整天才成功。

      所以这个同步过程还是有门槛的。对于一些小伙伴来说, 我们只是想在测试网络上操作一下geth而已,所以可以选用ganache-cli和web3配合来操作geth。如果你是想发布智能合约,那么最好还是同步所有的区块,为了保证一致性,这样才能测试出没有问题的合约。

二、ganache-cli的安装和使用

1、什么是ganache-cli

      Ganache这个名字比较陌生,但是它的前身testRPC却是大名鼎鼎,网上的很多老文章里都是用testRPC。Ganache是奶油巧克力的意思,据说是很久之前有个学徒做巧克力的放多了牛奶,师傅正要骂他,结果一尝发现味道还真不错,于是一种新的巧克力就诞生了~ Truffle是松露巧克力,一般是以Ganache为核,然后上面撒上可可粉,所以这两个产品的名字还是很贴切的。

Ganache现在有两个版本,一个是带图形界面的版本,下载地址:
https://github.com/trufflesuite/ganache/releases

咱们这边使用的是命令行版本:
github地址:
https://github.com/trufflesuite/ganache-cli

2、安装ganache-cli

sudo npm install -g ganache-cli

3、ganache-cli的使用

(1)、打开一个窗口,输入:ganache-cli   (创建10个新账号并且监听127.0.0.1:8545)
(2)、打开一个窗口。输入geth attach http://localhost:8545  (启用geth客户端)
(3)、通过编写web3.js来操作以太坊测试网络

      这里安装好之后,输入ganache-cli,系统会自动创建10个账号。我们可以通过一个轻量级钱包:MetaMask来获取一些测试以太币。

关于MetaMask参考链接:
http://8btc.com/thread-76137-1-5.html

      另外,启用geth客户端需要重新打开一个窗口,原来的ganache-cli客户端不能关闭。此处推荐大家使用一款linux终端管理工具,无敌好用。

Tmux终端复用工具小解

三、和web3.js配合操作geth

1、关于web3.js版本的选择


【以太坊】web3.js的1.0版本和0.2.0版本的安装及区别

2、关于web3.js操作geth

【以太坊】javascript控制台完整交易流程

      OK,这样我们就不用再辛辛苦苦的同步区块数据了,可以直接操作geth客户端。欢迎来到区块链的世界。

end

你可能感兴趣的:(区块链,从了解区块链到发布智能合约)