真实的国产乱ⅩXXX66竹夫人,五月香六月婷婷激情综合,亚洲日本VA一区二区三区,亚洲精品一区二区三区麻豆

成都創(chuàng)新互聯(lián)網(wǎng)站制作重慶分公司

鏈碼go語(yǔ)言 鏈碼編碼

fabric-sdk-go的簡(jiǎn)單使用

使用fabric提供的cryptogen工具生成文件模板

成都創(chuàng)新互聯(lián)公司于2013年開始,先為開平等服務(wù)建站,開平等地企業(yè),進(jìn)行企業(yè)商務(wù)咨詢服務(wù)。為開平企業(yè)網(wǎng)站制作PC+手機(jī)+微官網(wǎng)三網(wǎng)同步一站式服務(wù)解決您的所有建站問(wèn)題。

$ cryptogen showtemplate crypto-config.yaml

進(jìn)行修改,添加一個(gè)組織,一個(gè)orderer節(jié)點(diǎn).

根據(jù)crypto-config.yaml文件生成證書文件:

$ cryptogen generate --config=crypto-config.yaml

查看生成的證書文件夾結(jié)構(gòu):

需要從fabric的源碼案例中拷貝configtx.yaml文件

$ cp $GOPATH/src/github點(diǎn)抗 /hyperledger/fabric-samples/first-network/configtx.yaml ./

對(duì)configtx.yaml文件進(jìn)行修改.

修改之前,創(chuàng)建一個(gè)文件夾,來(lái)保存即將創(chuàng)建的創(chuàng)世區(qū)塊文件

將創(chuàng)建區(qū)塊文件和通道的命令寫到一個(gè)腳本中! generate.sh

腳本文件和配置文件的目錄結(jié)構(gòu):

執(zhí)行g(shù)enerate.sh文件生成創(chuàng)世區(qū)塊文件和通道,其實(shí)只有一個(gè)組織,也沒(méi)必要生成錨節(jié)點(diǎn)更新文件..

$ ./generate.sh

配置docker-compose文件:

啟動(dòng)容器, 啟動(dòng)后查看容器運(yùn)行情況

$ docker-compose up -d

$ docker-compose ps

在這里,創(chuàng)建兩個(gè)腳本文件,用于docker容器的管理

clear_docker.sh 文件:

restart.sh 文件:

創(chuàng)建配置文件的時(shí)候,有兩個(gè)文件可以進(jìn)行參考...

修改后的sdk配置文件:

創(chuàng)建出一個(gè)模型對(duì)象,給其賦值,并開始初始化sdk

使用 pkg/fabsdk/fabsdk.go中的New()方法進(jìn)行實(shí)例化

創(chuàng)建請(qǐng)求之前,需要使用 gopackager.NewCCPackage 方法生成一個(gè)resource.CCPackage 對(duì)象,傳遞兩個(gè)參數(shù),一個(gè)是鏈碼的路徑(相對(duì)于工程的路徑), 一個(gè)是GOPATH的路徑.

安裝鏈碼,使用pkg/client/resmgmt/resmgmt.go文件中的方法

創(chuàng)建請(qǐng)求之前,需要生成一個(gè)*cb.SignaturePolicyEnvelope類型的對(duì)象,使用 third_party/github點(diǎn)抗 /hyperledger/fabric/common/cauthdsl/cauthdsl_builder.go 文件中的方法即可,提供了好幾個(gè)方法, 使用任意一個(gè)即可.這里使用 SignedByAnyMember 方法: 需要傳入所屬組織ID

實(shí)例化鏈碼

使用 pkg/client/channel/chclient.go 中的 Execute() 方法,來(lái)進(jìn)行數(shù)據(jù)寫入的操作:

rsp, err := model.Channelclient.Execute(req)

寫入之前,要?jiǎng)?chuàng)建請(qǐng)求:

tempArgs是要傳給鏈碼的參數(shù),可以做下封裝,就不受參數(shù)個(gè)數(shù)的限制了

使用 pkg/client/channel/chclient.go 中的 Query() 方法,來(lái)進(jìn)行數(shù)據(jù)查詢的操作: 查詢之前,同樣需要?jiǎng)?chuàng)建請(qǐng)求.

鏈碼在工程中的路徑應(yīng)該是 工程名/chaincode文件夾

比如:

driverFabricDemo/chaincode

而不應(yīng)該省略掉工程名這樣寫: chaincode

錯(cuò)誤原因:cert.URIs 和 tpl.URIs 這兩個(gè)字段沒(méi)有被定義.

進(jìn)入tpl對(duì)象中, /usr/local/go/src/crypto/x509/x509.go 是個(gè)結(jié)構(gòu)體,并沒(méi)有發(fā)現(xiàn) URIs 字段

對(duì)go版本進(jìn)行升級(jí),從1.9.3升級(jí)到1.11.3, 再次進(jìn)入 /usr/local/go/src/crypto/x509/x509.go 文件中,查看結(jié)構(gòu)體內(nèi)容:

在執(zhí)行sdk的Excute()方法時(shí)報(bào)錯(cuò).

方法不存在,一般是由于鏈碼的Invoke方法中的方法名和Excute()方法傳入的方法名不一樣.

但是可以肯定的是,鏈碼的Invoke方法中的方法名和,項(xiàng)目中執(zhí)行Excute()方法時(shí)傳入的方法名是完全一樣的! 但是很奇怪了,為什么會(huì)出現(xiàn)這個(gè)錯(cuò)誤呢? 使用 docker rmi 刪除掉 dev-peerx.travle.xq點(diǎn)抗 的鏡像,再重新運(yùn)行即可.

在創(chuàng)建實(shí)例化鏈碼請(qǐng)求的時(shí)候

總是提示

Cannot use str (type *cb.SignaturePolicyEnvelope) as type *common.SignaturePolicyEnvelope less... (?F1) Inspection info: Reports composite literals with incompatible types and values

明明是相同的類型,卻總是報(bào)錯(cuò),應(yīng)該是IDE的問(wèn)題.把vendor文件夾刪除后,就不會(huì)有提示了. 再使用vendor對(duì)工程進(jìn)行init 和 add +external 就好了!!

出現(xiàn)這個(gè)錯(cuò)誤,一般都是配置文件哪個(gè)地方寫錯(cuò)了,需要細(xì)心檢查

go是什么編程語(yǔ)言?主要應(yīng)用于哪些方面?

Go語(yǔ)言由Google公司開發(fā),并于2009年開源,相比Java/Python/C等語(yǔ)言,Go尤其擅長(zhǎng)并發(fā)編程,性能堪比C語(yǔ)言,開發(fā)效率肩比Python,被譽(yù)為“21世紀(jì)的C語(yǔ)言”。

Go語(yǔ)言在云計(jì)算、大數(shù)據(jù)、微服務(wù)、高并發(fā)領(lǐng)域應(yīng)用應(yīng)用非常廣泛。BAT大廠正在把Go作為新項(xiàng)目開發(fā)的首選語(yǔ)言。

Go語(yǔ)言能干什么?

1、服務(wù)端開發(fā):以前你使用C或者C++做的那些事情,用Go來(lái)做很合適,例如日志處理、文件系統(tǒng)、監(jiān)控系統(tǒng)等;

2、DevOps:運(yùn)維生態(tài)中的Docker、K8s、prometheus、grafana、open-falcon等都是使用Go語(yǔ)言開發(fā);

3、網(wǎng)絡(luò)編程:大量?jī)?yōu)秀的Web框架如Echo、Gin、Iris、beego等,而且Go內(nèi)置的 net/http包十分的優(yōu)秀;

4、Paas云平臺(tái)領(lǐng)域:Kubernetes和Docker Swarm等;

5、分布式存儲(chǔ)領(lǐng)域:etcd、Groupcache、TiDB、Cockroachdb、Influxdb等;

6、區(qū)塊鏈領(lǐng)域:區(qū)塊鏈里面有兩個(gè)明星項(xiàng)目以太坊和fabric都使用Go語(yǔ)言;

7、容器虛擬化:大名鼎鼎的Docker就是使用Go語(yǔ)言實(shí)現(xiàn)的;

8、爬蟲及大數(shù)據(jù):Go語(yǔ)言天生支持并發(fā),所以十分適合編寫分布式爬蟲及大數(shù)據(jù)處理。

學(xué)習(xí)區(qū)塊鏈開發(fā)是學(xué)習(xí)go語(yǔ)言、hyper ledger fabric比較好、還是以太坊智能合約比較好或者公鏈開發(fā)?

Fabric區(qū)塊鏈開發(fā)詳解,本課程面向初學(xué)者,內(nèi)容即包含Hyperledger Fabric的身份證書與MSP服務(wù)、權(quán)限策略、通道配置與啟動(dòng)、鏈碼通信接口等核心概念,也包含F(xiàn)abric網(wǎng)絡(luò)設(shè)計(jì)、鏈碼與應(yīng)用開發(fā)的操作實(shí)踐,是學(xué)習(xí)Fabric區(qū)塊鏈開發(fā)的最佳選擇。

給你個(gè)免費(fèi)區(qū)塊鏈博客看看。


網(wǎng)站欄目:鏈碼go語(yǔ)言 鏈碼編碼
本文來(lái)源:http://weahome.cn/article/ddssigi.html

其他資訊

在線咨詢

微信咨詢

電話咨詢

028-86922220(工作日)

18980820575(7×24)

提交需求

返回頂部