最美情侣中文字幕电影,在线麻豆精品传媒,在线网站高清黄,久久黄色视频

歡迎光臨散文網(wǎng) 會員登陸 & 注冊

matic馬蹄鏈dapp開發(fā)原理丨matic馬蹄鏈dapp系統(tǒng)開發(fā)(方案及規(guī)則)丨matic馬蹄鏈源碼

2023-03-11 10:20 作者:bili_33032327742  | 我要投稿

  什么是DApp


  “DApp”代表去中心化應(yīng)用程序。與傳統(tǒng)應(yīng)用程序一樣,去中心化應(yīng)用程序也有前端(客戶端)和后端(服務(wù)器端)。DApp的用戶界面可以用任何語言編寫(就像傳統(tǒng)應(yīng)用程序一樣),并且可以調(diào)用其后端。那么,Dapps與傳統(tǒng)應(yīng)用程序有何不同?DApp的后端代碼運(yùn)行在分散的對等網(wǎng)絡(luò)(即區(qū)塊鏈)上。


  使用web3py部署智能合約并調(diào)用


  前提:啟動本地geth節(jié)點(diǎn),開啟相關(guān)rpc服務(wù),默認(rèn)端口為8545,本人是在虛擬機(jī)中配置了geth節(jié)點(diǎn)


  使用solc或者solcjs編譯智能合約生成abi和bin,solc指令為控制臺輸出,solcjs會保存成文件。


  solc--bin Voting.sol


  solc--abi Voting.sol


  安裝包web3py


  pip install web3py


  import json


  from web3 import Web3


  web3=Web3(Web3.HTTPProvider('http://ip:8545'))


  print(web3.isConnected())功能及方案詳細(xì)I59需求2OO7設(shè)計(jì)3O69


  account=web3.eth.accounts[0]


  #讀取文件中的abi和bin,也可以當(dāng)場生成


  with open('dataVoting_sol_Voting.abi','r')as f:


  abi=json.load(f)


  with open('dataVoting_sol_Voting.bin','r')as f:


  code=f.read()


  newContract=web3.eth.contract(bytecode=code,abi=abi)


  #發(fā)起交易部署合約,開發(fā)合約案例唯:yy625019


  option={'from':account,'gas':1000000}


  web3.geth.personal.unlock_account(account,'123')


  tx_hash=newContract.constructor([b'dog',b'cat',b'bird']).transact(option)


  #等待挖礦使得交易成功


  tx_receipt=web3.eth.waitForTransactionReceipt(tx_hash)


  print(tx_receipt.contractAddress)


  合約部署成功后就可以調(diào)用了,如果需要改變數(shù)據(jù)需要使用transac()發(fā)起交易,并等待挖礦確認(rèn),只是讀取則使用cal()即可


  #調(diào)用合約,合約地址就是剛剛控制臺打印的


  address=web3.toChecksumAddress("0x6999C68d214E1d193534601759b7F1eC534597Bf")


  c=web3.eth.contract(address,abi=abi)


  print(c.functions.totalVotesFor(b'dog').call())


matic馬蹄鏈dapp開發(fā)原理丨matic馬蹄鏈dapp系統(tǒng)開發(fā)(方案及規(guī)則)丨matic馬蹄鏈源碼的評論 (共 條)

分享到微博請遵守國家法律
崇信县| 合水县| 萨迦县| 雷山县| 楚雄市| 江安县| 儋州市| 子长县| 师宗县| 菏泽市| 北流市| 嘉黎县| 贡嘎县| 双柏县| 衡南县| 崇阳县| 长乐市| 阿坝县| 昂仁县| 洛南县| 保德县| 阿克陶县| 綦江县| 长顺县| 洛川县| 如东县| 曲松县| 中牟县| 津市市| 蓬溪县| 从江县| 建平县| 城步| 连州市| 阳高县| 安国市| 普陀区| 湟源县| 金山区| 珠海市| 高淳县|