11 智慧型合約本地開發部署流程

2021-08-30 02:39:22 字數 2082 閱讀 9055

index.sol

pragma solidity ^

0.4.21

;contract inbox

function

setmessage

(string message)

function

getmessage()

public

returns

(string)

}

compile.js

載入編譯器

let solc =

require

('solc'

)let fs =

require

('fs'

)

獲取.sol原始碼

let sourceinfo = fs.

readfilesync

('./contracts/index.sol'

,'utf-8'

);

編譯,獲取abi,bytecode

module.exports = output.contracts[

':inbox'

]

deploy.js

引入web3

let web3 =

require

('web3'

)

建立web3例項

))指定服務商

))引用compile.js

let

=require

('./compile'

)

部署合約

deploy =

async()

=>).

send()

//***********************1.獲取合約的位址,在options裡面 .呼叫setmessage方法*********

let msg =

await contractinstance.methods.

getmessage()

.call()

console.

log(

'msg:'

,msg)

//***********************2 呼叫setmessage方法***********************

let res =

await contractinstance.methods.

setmessage

('nihao').

send()

console.

log(

"res:"

,res)

***********************3.呼叫getmessage方法

msg =

await contractinstance.methods.

getmessage()

.call()

console.

log(

"getmessage:"

,msg)

//獲取合約的地質,在options裡面

console.

log(

'address:'

,contractinstance.options.address)

}catch

(e)}

呼叫合約

deploy

()

注意事項

Truffle開發框架建立智慧型合約

2.安裝truffle npm install g truffle 3.安裝testrpc testrpc自帶10個使用者賬戶主要用於truffle除錯 npm install g ethereumjs testrpc 4.接下來我們就可以建立專案了 truffle init webpack 由於新...

區塊鏈智慧型合約開發小記

使用 python和 solidity語言,drf框架開發智慧型合約的一些踩坑記錄。compile source和compile standard方法都無法import 檔案進行編譯,提示找不到檔案,使用compile files方法吧。compile files 方法裡面合約路徑不能有冒號,使用相...

以太坊 Ethereum 開發智慧型合約

我們將使用truffle建立乙個智慧型合約專案,該智慧型合約的功能是可以獲取值和設定值。首先建立專案目錄 然後使用truffle init初始化專案,將生成專案模板檔案 truffle init我們可以檢視一下生成的專案目錄 卷 資料 的資料夾 path 列表 卷序列號為 0c52 9cf4 g t...