使用VSCode连接到IBM Cloud区块链网络
文章目录
- 从IBM Cloud控制面板导出连接信息
- 在VSCode中创建gateway和wallet
- 在VSCode中提交transaction
上篇文章我们讲到怎么在IBM Cloud搭建区块链环境并且将本地的智能合约导出并安装在IBM Cloud网络环境中。
本篇文章我们会继续讲解如何通过本地的VSCode来远程连接和调用部署在远程的IBM Cloud上的智能合约。
从IBM Cloud控制面板导出连接信息
如果客户端需要连接到Fabric网络,需要通过gateway来连接。如果是实际的应用程序,需要通过使用Hyperledger Fabric SDKs作为gateway来连接Fabric网络。
本质上VSCode也是一个客户端,所以VSCode也可以通过gateway来连接远程Fabric网络。VSCode的IBM blockchain extention已经在插件面板上提供了FABRIC GATEWAYS选项,我们直接在这里使用即可。下面看下如何配置一个FABRIC GATEWAY。
通过该GATEWAY,我们可以在VSCode中,远程submit/evaluate网络中的tranaction.
- 首先创建和注册一个连接账号(enroll ID + secret)。
在上篇文章中,我们讲到过如何在CA中创建新的ID。这个创建的过程就是enroll的过程,将这个个ID在CA中注册,并配置相应的权限。
在Nodes面板中,在Certif Authorities中,我们找到之前创建的CA : Org1 CA。 点击Register user。输入vscode和vscodepw作为id和secret。选择Client作为类型,affiliation选择org1。 maximum enrollments留空。点击next即可创建新的id。
注意这里maximum enrollments的作用,maximum enrollments指定了最大的enrollment次数,如果设定为1,则该ID只能被enroll一次,后面就没有用了。这对于赋予指定用户的权限的时候非常有用。
- 导出Connection profile
我们需要使用到Connection profile才能连接到Fabric网络。在Smart contracts面板选中之前实例化的智能合约,点击… 选择Connect with SDK,选择org1msp 和 Org1 CA 作为你的MSP和Certificate Authority, 然后点击 Download connection profile,下载出来。
在VSCode中创建gateway和wallet
- 创建gateway
打开IBM Blockchain Platform,在FABRIC GATEWAYS 点击 + , 输入ibm_cloud作为你的gateway名字, 接下来它需要你选择一个profile,选择上面从IBM Cloud上面下载的profile, 然后gateway就创建好了。
点击该gateway, 他需要你选择一个wallet,下面我们看下怎么创建wallet。
- 创建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, 选择你刚刚创建的ibm_cloud, 输入vscode和vscodepw作为id和security。 接下来你就可以在FABRIC WALLETS中看到创建的identity了。
背后的故事: 刚刚我们实际上发送了一个enroll请求到IBM Cloud上面的CA,并且获得了一个ID,并存储在本地的wallet里面,以供后面使用。
添加wallet之后,如果你再次点击ibm_cloud, 还是会要你去选择一个wallet, 这时候可以右键点击ibm_cloud,选择Associate A Wallet, 将 ibm_cloud_wallet和ibm_cloud关联起来,这样就不用每次都再次选择了。
在VSCode中提交transaction
现在我们已经有了可以连接到IBM Cloud的gateway了。接下来, 我们看一下怎么在VSCode中提交transaction。
在FABRIC GATEWAYS中点击ibm_cloud。
打开Channels > channel1 > demoContract@0.0.1
右键点击myAssetExists,选择Evaluate Transaction. 输入[“001”] 作为key,因为我们现在没有任何值,所以你会看到:
[SUCCESS] Returned value from myAssetExists: false
右键点击createMyAsset,选择 Submit Transaction 输入 [“001”, “hello ibm cloud”] ,我们就创建好了一个asset。
接下来我们选择readMyAsset的 Evaluate Transaction 接下来输入 [“001”],我们可以看到asset成功创建了。
[SUCCESS] Returned value from readMyAsset: {"value":"hello ibm cloud"}
恭喜你,你已经可以从本地的VSCode远程了解IBM Cloud Fabric网络了。
更多精彩内容且看:
- 区块链从入门到放弃系列教程-涵盖密码学,超级账本,以太坊,Libra,比特币等持续更新
- Spring Boot 2.X系列教程:七天从无到有掌握Spring Boot-持续更新
- Spring 5.X系列教程:满足你对Spring5的一切想象-持续更新
- java程序员从小工到专家成神之路(2020版)-持续更新中,附详细文章教程
更多教程请参考 flydean的博客
使用VSCode连接到IBM Cloud区块链网络相关推荐
- 基于ubuntu16.04部署IBM开源区块链项目-弹珠资产管理(Marbles)
前言 本教程基本上是对Marbles项目的翻译过程. 如果英文比较好的话,建议根据官方操作说明,一步步进行环境部署.当然你也可以参考本教程在自己的主机上部署该项目. Marbles 介绍 关于 Mar ...
- IBM推出跨境支付区块链网络,企业级区块链技术进一步升级
周一,IBM公布了一个应用于跨境支付的区块链网络,这也是首个同类型的国际支付网络. "这标志着企业区块链应用实践进化到了一个新的阶段."IBM全球区块链市场开发副总裁Jesse L ...
- 嗖嗖嗖~构建区块链网络,Starter Plan自带加速度!
如果你正打算探索 用于业务用途的分布式账本技术, 并希望构建一个业务区块链 来进行演示.试验或预生产过渡, 那么这篇文章应该非常适合你去阅读. 今天,我们将学习如何使用 StarterPlan, 以及 ...
- 区块链基础知识系列 第一课 区块链网络简介
区块链是一种分布式分类帐技术 (DLT),通过建立新一代事务性应用程序的新信任度.可计帐性和透明度,来简化业务流程.区块链网络首次引入到了比特币兑换市场,但其实际使用范围远远超出了加密数字货币事务处理 ...
- 区块链网络端口及证书
一.网络的三类端口 区块链网络由多个互相连接的节点构成,每个节点又与客户端.浏览器和监控工具等相连接.区块链网络包括P2P端口.RPC端口和Channel端口. RPC(即Remote Procedu ...
- Fabric区块链网络
翻译自fabric官方文档: https://hyperledger-fabric.readthedocs.io/en/release-1.3/network/network.html Fabric区 ...
- 记AELF区块链网络的一次内存持续增长问题排查
记AELF区块链网络的一次内存持续增长问题排查 背景:测试同学运行AElf单节点过程中,发现节点突然不再出块,经查看日志发现 Worker(交易执行进程) 全部掉线,无法继续执行交易,从而导致节点挂掉 ...
- 腾讯公开“区块链网络的信息处理方法”相关专利
企查查App显示,1月8日,腾讯科技(深圳)有限公司公开专利"区块链网络的信息处理方法.装置及节点设备",申请日为2020年12月,公开号为CN112202933A.该专利摘要显示 ...
- 容器中运行Fabric区块链网络
2019独角兽企业重金招聘Python工程师标准>>> 容器中运行Fabric区块链网络 Fabric是区块链项目Hyperleger的主要工程,可以在容器中运行,快速建立实验区块链 ...
最新文章
- z-index 用法
- 别名的应用(New-Alias)
- ArcGIS Pro发布三维场景服务
- mysql+keepalived必须要lvs吗_MySQL 双主热备 + LVS + Keepalived 高可用操作记录
- 聊聊JvmGcMetrics的managementExtensionsPresent
- 有点小激动-Index Condition Pushdown Optimization
- 周志华眼中的贝叶斯方法(转)
- QT实现共享内存进行进程间通信
- Sql Server日期格式的转换收集
- 人工智能实战小程序之语音_前端开发
- linux vi行尾总是显示颜色,【转载】Linux 下使用 vi 没有颜色的解决办法
- js面试题:fn.call.call.call.call(fn2) 解析
- Linpack 安装和使用步骤
- tda7415c参数_TDA7541TDA7415调试小结
- 无线打印服务器怎么安装,【DDwifi打印服务器】Windows 7系统添加打印机步骤(离线安装打印机驱动)...
- 校招总结—FPGA从入门到放弃
- 参考资料来自 懒兔子 的公众号
- CodeForces - 1325C Ehab and Path-etic MEXs
- iannotate pdf android,把PDF文件加入到iAnnotate应用的方式
- python基础教程:python+gdal+遥感图像拼接(mosaic)的实