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

文章目录

  • 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/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可以退出控制台。文章来源地址https://uudwc.com/A/ZGLJE

原文地址:https://blog.csdn.net/woshisangsang/article/details/127583923

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请联系站长进行投诉反馈,一经查实,立即删除!

上一篇 2023年09月24日 10:17
LaTex打出上大下小的公式
下一篇 2023年09月24日 10:22