| |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
-> 系统运维 -> fabric2.3系统test-network环境测试自己的链码 -> 正文阅读 |
|
[系统运维]fabric2.3系统test-network环境测试自己的链码 |
首先,我们需要安装好fabric2.3的环境,具体参考我之前的文章: 这里默认已经有了fabric2.3的环境,进入test-network文件夹: 在开始测试之前:先把gopath项目路径全部解锁: sudo chmod -R 777 $GOPATH 打开测试网络:sudo ./network.sh up 可以看到启动了fabric2.3的测试网络,包含了一个cli,两个peer结点,和一个orderer结点(用来排序的): 可以用docker ps 查看开启的容器: 接着在测试网络加入通道: ./network.sh createChannel 这里我们设置一下go的环境变量,当然如果有科学上网那最好,但是还是同时设置下: 这是go语言代理的网址: Goproxy.cnThe most trusted Go module proxy in China.https://goproxy.cn/ go env -w?GO111MODULE=on 然后可以看下go env: 看到go的 环境变量改了: 我这里已经设置了,就不操作了:? 重要:这里我们进行自己链码安装: 首先在当前目录下新建一个文件夹mychaincode再在里面新建一个文件夹,把自己编写的链码放进去: 在这里打开终端: 执行:go mod init 再执行:go mod tidy? (增加需要的包,去掉不需要的包) 最后执行:go mod vendor 这里是讲链码的所有依赖下载到本文件夹内的vendor内,实现依赖封装: 此时,我们的链码环境才算完成了! 接下来就是链码的安装: 回到test-network目录下: 我们先看示例:sudo ./network.sh deployCC -ccn basic -ccp ../asset-transfer-basic/chaincode-go -ccl go 我们执行:sudo ./network.sh deployCC -ccn mycc -ccp ../asset-transfer-basic/chaincode-go -ccl go 如果出现这个报错: 是因为我们用了sudo 管理员模式下会有时候找不到go的环境 我们去掉sudo: 运行:./network.sh deployCC -ccn mycc -ccp ../asset-transfer-basic/chaincode-go -ccl go 显示: 说明我们的链码在两个组织的结点上都安装成功了! 这个时候我们就要来实例化链码了: 这里注意,我们使用的官方的脚本,在fabric2.0版本中默认是不需要实例化链码了,所以直接调用invoke即可: 首先配置一下环境变量:
这里执行初始化链码:
为什么参数这么写?让我们看一下链码: 这里需要传入四个参数,(注意!fabric2.0中,无论链码需要传入什么参数,我们统一用字符串进行传入即可,就是。 执行结果: 说明已经执行成功了! 此时执行自己写的一个链码方法: 我们看链码源码: 在2.0链码里,方法名就是Saysomething,对应前面的"function":"Saysomething",后面的args后面的参数就是链码中的something string。 在执行查询链码: 从链码可知道,只需要传进去一个A string就行了: 执行:
? 可以看到查出来了:100,A的资产是100,也就是最开始初始化链码时存入账本的值。 这里尝试把peer0.org1.example.com和peer0.org2.example.com的路径删除再执行: 发现可以执行的!说明在查询的时候,也就是设计到账本改动的时候是不需要加背书策略的! 这里可以注意一下:就是如果是查询操作,仅仅是查询账本上的数据,那么可以把invoke改成query即可,当然也可以继续使用invoke也可以的! 如:
因为是查询,所以不需要连接orderer结点,也不需要加上两个peer的证书,也就是查询不需要背书策略。 |
|
|
上一篇文章 下一篇文章 查看所有文章 |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 | -2024/11/15 14:19:11- |
|
网站联系: qq:121756557 email:121756557@qq.com IT数码 |