Hyperledger Fabric 執行 assetTransfer.go 時出現 UNKNOWN: access denied: channel [mychannel] creator org [Org1MSP]


寫在前面

  其實在八月份的時候就搭過一遍Fabric環境,但是由於各種原因,最近想在Ubuntu下重新搭一遍。本來一切都很順利的,直到執行go run assetTransfer.go ......

出現情況

  依次執行如下指令:

 

1 ./network.sh up createChannel
2 ./network.sh deployCC -ccn basic -ccp ../asset-transfer-basic/chaincode-go -ccl go
3 docker ps   //可以忽略,主要是查看當前容器
4 cd ..
5 cd asset-transfer-basic/application-go
6 go run assetTransfer.go

 

  然后就會出現如下信息:

2021/11/26 09:12:03 ============ application-golang starts ============
 [fabsdk/core] 2021/11/26 01:12:03 UTC - cryptosuite.GetDefault -> INFO No default cryptosuite found, using default SW implementation
2021/11/26 09:12:13 Failed to get network: Failed to create new channel client: event service creation failed: could not get chConfig cache reference: QueryBlockConfig failed: QueryBlockConfig failed: queryChaincode failed: Transaction processing for endorser [localhost:7051]: Endorser Client Status Code: (2) CONNECTION_FAILED. Description: dialing connection on target [localhost:7051]: waiting for connection failed: context deadline exceeded
exit status 1

解決方法

  打開application-go文件夾,將文件夾下面的keystore和wallet兩個文件夾刪掉,再重新執行go run assetTransfer.go就可以了。

 

   重新執行后,結果如下。

 

  可以看到問題已經解決啦!

出現原因

  出現這個問題的原因可能是因為我之前跑過一次,他就生成了這兩個文件夾,只要將這兩個文件夾刪掉就可以了。

溫馨提示

  Fabric給的assetTransfer.go代碼里面有個地方的文件名寫錯了,需要手動改一下,不然也會報錯的。要改的地方在代碼的130行。改后如圖所示。

certPath := filepath.Join(credPath, "signcerts", "User1@org1.example.com-cert.pem")

 

  當然,也可以跑一遍,到它報錯的文件夾下找對應的文件名,然后改。

  最后,十分感謝《Fabric在嘗試使用應用程序調用時出現:UNKNOWN: access denied: channel [mychannel] creator org [Org1MSP]》的作者,讓我能夠一大早解決這個問題。

參考博客

[1]Fabric在嘗試使用應用程序調用時出現:UNKNOWN: access denied: channel [mychannel] creator org [Org1MSP]

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM