使用VSCode连接到IBM Cloud区块链网络
文章目錄
- 從IBM Cloud控制面板導(dǎo)出連接信息
- 在VSCode中創(chuàng)建gateway和wallet
- 在VSCode中提交transaction
上篇文章我們講到怎么在IBM Cloud搭建區(qū)塊鏈環(huán)境并且將本地的智能合約導(dǎo)出并安裝在IBM Cloud網(wǎng)絡(luò)環(huán)境中。
本篇文章我們會繼續(xù)講解如何通過本地的VSCode來遠(yuǎn)程連接和調(diào)用部署在遠(yuǎn)程的IBM Cloud上的智能合約。
從IBM Cloud控制面板導(dǎo)出連接信息
如果客戶端需要連接到Fabric網(wǎng)絡(luò),需要通過gateway來連接。如果是實際的應(yīng)用程序,需要通過使用Hyperledger Fabric SDKs作為gateway來連接Fabric網(wǎng)絡(luò)。
本質(zhì)上VSCode也是一個客戶端,所以VSCode也可以通過gateway來連接遠(yuǎn)程Fabric網(wǎng)絡(luò)。VSCode的IBM blockchain extention已經(jīng)在插件面板上提供了FABRIC GATEWAYS選項,我們直接在這里使用即可。下面看下如何配置一個FABRIC GATEWAY。
通過該GATEWAY,我們可以在VSCode中,遠(yuǎn)程submit/evaluate網(wǎng)絡(luò)中的tranaction.
在上篇文章中,我們講到過如何在CA中創(chuàng)建新的ID。這個創(chuàng)建的過程就是enroll的過程,將這個個ID在CA中注冊,并配置相應(yīng)的權(quán)限。
在Nodes面板中,在Certif Authorities中,我們找到之前創(chuàng)建的CA : Org1 CA。 點擊Register user。輸入vscode和vscodepw作為id和secret。選擇Client作為類型,affiliation選擇org1。 maximum enrollments留空。點擊next即可創(chuàng)建新的id。
注意這里maximum enrollments的作用,maximum enrollments指定了最大的enrollment次數(shù),如果設(shè)定為1,則該ID只能被enroll一次,后面就沒有用了。這對于賦予指定用戶的權(quán)限的時候非常有用。
我們需要使用到Connection profile才能連接到Fabric網(wǎng)絡(luò)。在Smart contracts面板選中之前實例化的智能合約,點擊… 選擇Connect with SDK,選擇org1msp 和 Org1 CA 作為你的MSP和Certificate Authority, 然后點擊 Download connection profile,下載出來。
在VSCode中創(chuàng)建gateway和wallet
打開IBM Blockchain Platform,在FABRIC GATEWAYS 點擊 + , 輸入ibm_cloud作為你的gateway名字, 接下來它需要你選擇一個profile,選擇上面從IBM Cloud上面下載的profile, 然后gateway就創(chuàng)建好了。
點擊該gateway, 他需要你選擇一個wallet,下面我們看下怎么創(chuàng)建wallet。
在FABRIC WALLETS 中點擊 + , 選擇Create a new wallet and add an identity, 給它起個名字:ibm_cloud_wallet, 給identity起個名字:id,輸入org1msp作為mspid, 選擇Select a gateway and provide an enrollment ID and secret, 選擇你剛剛創(chuàng)建的ibm_cloud, 輸入vscode和vscodepw作為id和security。 接下來你就可以在FABRIC WALLETS中看到創(chuàng)建的identity了。
背后的故事: 剛剛我們實際上發(fā)送了一個enroll請求到IBM Cloud上面的CA,并且獲得了一個ID,并存儲在本地的wallet里面,以供后面使用。
添加wallet之后,如果你再次點擊ibm_cloud, 還是會要你去選擇一個wallet, 這時候可以右鍵點擊ibm_cloud,選擇Associate A Wallet, 將 ibm_cloud_wallet和ibm_cloud關(guān)聯(lián)起來,這樣就不用每次都再次選擇了。
在VSCode中提交transaction
現(xiàn)在我們已經(jīng)有了可以連接到IBM Cloud的gateway了。接下來, 我們看一下怎么在VSCode中提交transaction。
在FABRIC GATEWAYS中點擊ibm_cloud。
打開Channels > channel1 > demoContract@0.0.1
右鍵點擊myAssetExists,選擇Evaluate Transaction. 輸入[“001”] 作為key,因為我們現(xiàn)在沒有任何值,所以你會看到:
[SUCCESS] Returned value from myAssetExists: false
右鍵點擊createMyAsset,選擇 Submit Transaction 輸入 [“001”, “hello ibm cloud”] ,我們就創(chuàng)建好了一個asset。
接下來我們選擇readMyAsset的 Evaluate Transaction 接下來輸入 [“001”],我們可以看到asset成功創(chuàng)建了。
[SUCCESS] Returned value from readMyAsset: {"value":"hello ibm cloud"}
恭喜你,你已經(jīng)可以從本地的VSCode遠(yuǎn)程了解IBM Cloud Fabric網(wǎng)絡(luò)了。
更多精彩內(nèi)容且看:
- 區(qū)塊鏈從入門到放棄系列教程-涵蓋密碼學(xué),超級賬本,以太坊,Libra,比特幣等持續(xù)更新
- Spring Boot 2.X系列教程:七天從無到有掌握Spring Boot-持續(xù)更新
- Spring 5.X系列教程:滿足你對Spring5的一切想象-持續(xù)更新
- java程序員從小工到專家成神之路(2020版)-持續(xù)更新中,附詳細(xì)文章教程
更多教程請參考 flydean的博客
總結(jié)
以上是生活随笔為你收集整理的使用VSCode连接到IBM Cloud区块链网络的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Spring Boot Starters
- 下一篇: 使用spring boot创建fat j