文章目录
1. 任务背景2. 任务目标3. 相关知识点4. 任务实操4.1 编写合约文件4.2 编写代码4.3 部署Demo合约4.4 调用Demo合约 5. 总结1. 任务背景
装完控制台,可以部署、调用合约了。
2. 任务目标
掌握部署、调用合约的操作。
3. 相关知识点
直接看实操。
4. 任务实操
4.1 编写合约文件
cd /opt/fisco-console/console/contracts/soliditytouch Demo.sol
4.2 编写代码
nano Demo.sol
代码为:
pragma solidity ^0.4.24;contract Demo{string name;function Demo() {name = "Hello, World!";}function get()constant returns(string) {return name;}function set(string n) {name = n;}}
4.3 部署Demo合约
先启动控制台,然后执行,注意需要记住合约地址
# 在控制台输入以下指令 部署成功则返回合约地址[group:1]> deploy Demotransaction hash: 0x3fd17626d9f77d72f560f9124e11640bd485dbd1413443eda8b3a9279d45b96fcontract address: 0xf5fe7a78d22d031cf5b00cfde628f00d9fba13eccurrentAccount: 0x9ddf8436bf390f807b0a0c06bf08a10af9b933cc
4.4 调用Demo合约
# 查看当前块高[group:1]> getBlockNumber1# 调用get接口获取name变量 此处的合约地址是deploy指令返回的地址[group:1]> call Demo 0xf5fe7a78d22d031cf5b00cfde628f00d9fba13ec get# 查看当前块高,块高不变,因为get接口不更改账本状态[group:1]> getBlockNumber1# 调用set设置name[group:1]> call Demo 0xf5fe7a78d22d031cf5b00cfde628f00d9fba13ec set "YYDS"# 再次查看当前块高,块高增加表示已出块,账本状态已更改[group:1]> getBlockNumber2# 调用get接口获取name变量,检查设置是否生效[group:1]> call Demo 0xf5fe7a78d22d031cf5b00cfde628f00d9fba13ec get
5. 总结
感觉确实很高级,最后输入quit可以退出控制台。