在以太坊的私鏈上釋出智慧合約
阿新 • • 發佈:2018-12-21
如何搭建以太坊私鏈請參考:
https://blog.csdn.net/Ssuper_X/article/details/83272170
#這是一個簡單的乘法例子
pragma solidity ^0.4.2;
contract test {
function multiply(uint a) returns(uint d) {
return a * 7;
}
}
通過Remix編譯獲取智慧合約對的BYTECODE、ABI、WEB3DEPLOY。
- 部署智慧合約
部署智慧合約不僅需要ABI和CODE,還需要一個解鎖了的ETH賬號,關於搭建私鏈建立ETH賬號請參考: https://blog.csdn.net/Ssuper_X/article/details/83272170
建立合約
- 進入geth命令列中
- 在編譯後的內容中獲取ABI資訊
- 寫入ABI資訊:contract = eth.contract(abi)
- 解鎖from的賬號然後進行初始化:
- 通過挖礦確認合約釋出
miner.start()
Contract mined! address: 0x11eC1500187D8e0e7662add5700B77b8b27E0EE1 transactionHash: 0xd1b25d8f817166f9df94202bc66db547f93178d4b08aba8ad9ada5503e2665c1
==> 出現上面的訊息代表部署成功啦。
miner.stop()
- 合約互動
-
獲取合約物件:myContract = eth.contract(abi)
-
例項化合約物件:MyContract = myContract.at(initializer.address)
-
呼叫成功輸出