【发布时间】:2023-02-21 19:23:47
【问题描述】:
我通过 fabric-samples 中的 test-network.sh 建立了一个网络。 我使用命令
docker cp a4c:/var/hyperledger/production/ledgersData/chains/chains/mychannel/blockfile_000000 .
将 peer 中的块复制到我的主机 Linux 系统。 a4c 是peer0.org1.com 的容器 ID。
我想将其转换为 .json 文件。
但是也有一些问题。
我的 hyperledger fabric 版本是 2.2。 我的 configtxgen 版本是
configtxgen:
Version: 2.3.0
Commit SHA: ec81f3e74
Go version: go1.14.12
OS/Arch: linux/amd64
我的 configtxlator 版本是
configtxlator:
Version: 2.3.0
Commit SHA: ec81f3e74
Go version: go1.14.12
OS/Arch: linux/amd64
当我使用命令时
configtxgen -inspectBlock blockfile_000000 >> blockfile.json
它返回
2023-02-21 16:38:22.631 CST [common.tools.configtxgen] main -> INFO 001 Loading configuration
2023-02-21 16:38:22.631 CST [common.tools.configtxgen] doInspectBlock -> INFO 002 Inspecting block
2023-02-21 16:38:22.631 CST [common.tools.configtxgen] doInspectBlock -> INFO 003 Parsing genesis block
2023-02-21 16:38:22.631 CST [common.tools.configtxgen] main -> FATA 004 Error on inspectBlock: error unmarshaling to block: error unmarshaling Block: proto: can't skip unknown wire type 7
当我使用命令时
configtxlator proto_decode --type common.Block --input blockfile_000000 --output blockfile.json
它返回
configtxlator: error: Error decoding: error unmarshaling: proto: can't skip unknown wire type 7
但是,我可以按照我的预期解码genesis.Block和mychannel.Block。
【问题讨论】:
标签: json protocol-buffers blockchain hyperledger-fabric