Truffle
truffle 是一个工具,它提供:
- 内置智能合约编译,链接,部署和ABI管理。
- 与Mocha和Chai进行自动化合同测试。
- 可配置的构建工具,支持自定义构建过程。
- 可编写脚本的部署和迁移框架。
- 用于部署到公共和私有网络的网络管理。
交互式控制台,用于直接智能合约交互。
外部脚本运行器,用于在Truffle环境中执行脚本。
Install
$ npm install -g truffle
执行:
$ truffle init
将会自动创建空的工程目录,在写完代码逻辑之后,使用truffle compile 、truffle migrate、truffle test
去编译、部署、测试该工程。与此同时,它还提供了本地测试网络工具:ganache-cli (相当于truffle 的测试区块链server)
npm install -g ganache-cli
这样我们就可以在本地运行起测试网络了。
web3.js
web3.js是与Ethereum兼容的JavaScript API,它实现了通用JSON RPC规范。 换句话说,可以通过它与 以太坊进行交互。
示例:
var provider = new Web3.providers.HttpProvider("http://localhost:8545");
var contract = require("truffle-contract");
var MyContract = contract({
abi: ...,
unlinked_binary: ...,
address: ...,
})
MyContract.setProvider(provider);
provider 表示