gpt4 book ai didi

hyperledger-fabric - 在没有 fabric-ca 的情况下执行 fabcar

转载 作者:行者123 更新时间:2023-12-04 07:53:39 24 4
gpt4 key购买 nike

我构建了一个启用了多个组织和 tls 的 Fabric 网络。加密 Material 是用 cryptogen 构建的。我不打算在示例中使用 fabric-ca。

我通过 CLI 安装并实例化了 fabcar。使用 CLI 命令调用和查询非常有效。

现在,为了使用 nodejs 脚本 query.js 和 invoke.js,我连接了私钥和公钥,以便为 Fabcar 创建 PeerAdmin 凭证。我还更改了 .js 文件中的配置,以针对具有 grpcs 的节点和排序节点。

每当我执行任何 .js 脚本时,我都会不断收到以下错误:

Create a client and set the wallet location
Set wallet path, and associate user PeerAdmin with application
Check user is enrolled, and set a query URL in the network
Caught Error Error: PEM encoded certificate is required.
at new Endpoint (/home/hl/fabcar/node_modules/fabric-client/lib/Remote.js:146:11)
at new Remote (/home/hl/fabcar/node_modules/fabric-client/lib/Remote.js:95:20)
at new Peer (/home/hl/fabcar/node_modules/fabric-client/lib/Peer.js:53:3)
at Client.newPeer (/home/hl/fabcar/node_modules/fabric-client/lib/Client.js:173:14)
at Promise.resolve.then.then.then (/home/hl/fabcar/query.js:39:28)
at <anonymous>

当我尝试在没有 grpcs 的情况下查询链代码时,我收到以下错误:

Create a client and set the wallet location
Set wallet path, and associate user PeerAdmin with application
Check user is enrolled, and set a query URL in the network
Make query
Assigning transaction_id: 9cbf355cda03db2b1971fe10af27d66686ea9b913eda80f667cac48bada015bf
error: [client-utils.js]: sendPeersProposal - Promise is rejected: Error: Endpoint read failed
at /home/hl/fabcar/node_modules/grpc/src/client.js:554:15
returned from query
Query result count = 1
error from query = { Error: Endpoint read failed
at /home/hl/fabcar/node_modules/grpc/src/client.js:554:15 code: 14, metadata: Metadata { _internal_repr: {} } }
Response is Error: Endpoint read failed

PeerAdmin 内容:

{"name":"PeerAdmin","mspid":"PeerOrgMSP","roles":null,"affiliation":"","enrollmentSecret":"","enrollment":{"signingIdentity":"[...]","identity":{"certificate":"-----BEGIN CERTIFICATE-----\n[...]-----END CERTIFICATE-----\n"}}}

如果能帮助我找到正确的程序或解决上述问题,我们将不胜感激。

最佳答案

我了解到您将在没有 Fabric CA 的情况下进行 fabcar。如果是这样,您将无法使用 Node.js 应用程序,因为它正在使用用户上下文,而您没有注册用户上下文。

但是你想在没有CA的情况下使用fabcar,你可以调用或查询交易作为cli。

  1. 连接到cli容器,如果你使用fabcar,那么cli-container-name就是'cli'

docker exec -it cli bash

  1. 在cli 容器中,您可以调用或查询事务。如下例

peer chaincode query -C mychannel -n fabcar -c '{"Args":["queryAllCars",""]}'

peer chaincode query -C mychannel -n fabcar -c '{"Args":["queryCar","CAR4"]}'

调用事务是一样的

关于hyperledger-fabric - 在没有 fabric-ca 的情况下执行 fabcar,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47304852/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com