区块链入门教程(7)--使用控制台部署及调用合约

1. 任务背景

装完控制台,可以部署、调用合约了。

2. 任务目标

掌握部署、调用合约的操作。

3. 相关知识点

直接看实操。

4. 任务实操

4.1 编写合约文件

cd /opt/fisco-console/console/contracts/solidity
touch 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 Demo
transaction hash: 0x3fd17626d9f77d72f560f9124e11640bd485dbd1413443eda8b3a9279d45b96f
contract address: 0xf5fe7a78d22d031cf5b00cfde628f00d9fba13ec
currentAccount: 0x9ddf8436bf390f807b0a0c06bf08a10af9b933cc

4.4 调用Demo合约

# 查看当前块高
[group:1]> getBlockNumber
1
# 调用get接口获取name变量 此处的合约地址是deploy指令返回的地址
[group:1]> call Demo 0xf5fe7a78d22d031cf5b00cfde628f00d9fba13ec get
# 查看当前块高,块高不变,因为get接口不更改账本状态
[group:1]> getBlockNumber
1
# 调用set设置name
[group:1]> call Demo 0xf5fe7a78d22d031cf5b00cfde628f00d9fba13ec set "YYDS"
# 再次查看当前块高,块高增加表示已出块,账本状态已更改
[group:1]> getBlockNumber
2
# 调用get接口获取name变量,检查设置是否生效
[group:1]> call Demo 0xf5fe7a78d22d031cf5b00cfde628f00d9fba13ec get

5. 总结

感觉确实很高级,最后输入quit可以退出控制台。

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

程序员大阳

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值