简单说就是为了降低开发成本,用链上的数据和本地的账户,做一些开发测试等一系列操作。
申请主网的api:去alchemy或者infura注册一个账户,申请主网的api,这里用alchemy举例:
创建APP:https://dashboard.alchemy.com/,随便填个名字,选择Ethereum Mainnet,创建。
获取API:创建完成后,点VIEW KEY按钮,可以看到。这里用HTTPS的地址
Ganache客户端:https://trufflesuite.com/ganache/,下载完直接安装
Ganache CLI(命令行):https://github.com/trufflesuite/ganache-cli-archive
用npm install -g ganache-cli 或 yarn global add ganache-cli 安装都可以
Ganache客户端方式:
命令行方式:
ganache-cli --fork https://eth-mainnet.g.alchemy.com/v2/{你的key}@{区块高度}
如果找不到ganache-cli命令,在安装cli的时候,能看到安装路径,可以cd到目录,运行ganache-cli
也可以将ganache-cli的bin目录添加到系统PATH中,如
vim ~/.bash_profile
添加,在安装ganache-cli时可以看到
export PATH=$PATH:/{你的ganache目录}/bin
保存退出,使文件生效
source ~/.bash_profile
测试
const Web3 = require('web3')
const rpcURL = 'http://127.0.0.1:8545' //Ganache本地配置的地址
const web3 = new Web3(rpcURL)
const address = '0x6e9B9Ecc9f3B331F2E79629e87a6f1Ba7Fe8DEA0' //钱包地址
web3.eth.getBalance(address, (err, wei) => {
balance = web3.utils.fromWei(wei, 'ether')
console.log(balance)
})
欢迎关注Twitter:https://twitter.com/ishawzuo