3.06 EOS智慧合約(上)

尹成發表於2018-12-11

1.eosiocpp工具介紹

  • 是一個 C++ 生成 WASM 和 ABI 檔案的編譯工具
  • 有很多依賴庫,因此需要在eosio/eos-dev 的環境中才可以執行

2.abi介紹

  • ABI是Application Binary Interface的縮寫,它的意思是程式二進位制介面
  • 一個ABI是不同二進位制片段的連線紐帶,它定義了函式被呼叫的規則
  • EOS中的ABI除了約束action之外,還可以約束table

3.第一個智慧合約

  • config-local.ini第29行為true時,智慧合約執行會列印print的內容
    在這裡插入圖片描述
  • 啟動節點
    在這裡插入圖片描述
  • 配置兩個alias
    在這裡插入圖片描述
    在這裡插入圖片描述
  • 檢視區塊資訊
    在這裡插入圖片描述
  • 建立一個預設的智慧合約
    在這裡插入圖片描述
  • 檢視容器
    在這裡插入圖片描述
  • 檢視hello目錄
    在這裡插入圖片描述
  • 檢視hpp檔案
    在這裡插入圖片描述
  • 檢視智慧合約的cpp檔案
    在這裡插入圖片描述
  • 生成wast和wasm檔案
    在這裡插入圖片描述
  • 生成abi檔案
    在這裡插入圖片描述
  • 檢視生成的檔案
    在這裡插入圖片描述
  • 解鎖錢包
    在這裡插入圖片描述
  • 檢視錢包狀態
    在這裡插入圖片描述
  • 檢視eosio賬戶
    在這裡插入圖片描述
  • 部署合約
    在這裡插入圖片描述
  • 檢視賬戶下的智慧合約
    在這裡插入圖片描述
  • 呼叫智慧合約
    在這裡插入圖片描述
  • 檢視日誌
    在這裡插入圖片描述
  • 呼叫合約
    在這裡插入圖片描述

4.智慧合約執行與許可權控制

  • 修改hello.cpp,增加許可權檢查
    在這裡插入圖片描述
    在這裡插入圖片描述
    在這裡插入圖片描述
  • 生成wast檔案
    在這裡插入圖片描述
  • 解鎖錢包
    在這裡插入圖片描述
  • 部署合約
    在這裡插入圖片描述
  • 呼叫智慧合約
    在這裡插入圖片描述
  • 修改使用者名稱
    在這裡插入圖片描述
  • 修改使用者名稱,再次呼叫合約
    在這裡插入圖片描述

5.智慧合約token原始碼解讀

  • 原始碼目錄:eos\contracts\eosio.token

學院Go語言視訊主頁
https://edu.csdn.net/lecturer/1928

[清華團隊帶你實戰區塊鏈開發]
(https://ke.qq.com/course/344443?tuin=3d17195d)
掃碼獲取海量視訊及原始碼 QQ群:
721929980
在這裡插入圖片描述

相關文章