查询Hyper Ledger Fabric网络中的分类帐

时间:2018-01-19 10:57:44

标签: node.js blockchain hyperledger

我已经在下面的链接中查询了查询到Hyper-ledger Fabric网络中的分类帐:

http://hyperledger-fabric.readthedocs.io/en/release/write_first_app.html

在上面的链接中,他们给出了git-hub链接,其中我已完成所有步骤,如   - 启动网络   - 运行节点脚本以查询分类帐,如invoke.js,query.js

但是在那些脚本中,他们提供了一个Car的例子,其中他们调用了不同的功能来查询所有汽车,添加汽车等等。

我还运行了以下链接中提到的弹珠演示: https://github.com/IBM-Blockchain/marbles

在这个链接中,他们运行了一个名为“fabric-samples”的网络,我已经提到了这个问题的第一个链接。

所以,现在我想为大理石运行查询,为此我更改了query.js,并且我已经将链码id作为“大理石”给出,并给出函数名“readMarble”并在参数中传递大理石名称。

然后我有节点query.js所以它给出了如下错误:

商店路径:/ home / riyasoni / riya / blockchain / workspace / fabric-samples / fabcar / hfc-key-store 成功从持久性加载user1 错误:[client-utils.js]:sendPeersProposal - 拒绝Promise:错误:2 UNKNOWN:chaincode错误(状态:500,消息:收到未知的调用函数名称 - 'readMarble')     at new createStatusError(/home/riyasoni/riya/blockchain/workspace/fabric-samples/fabcar/node_modules/grpc/src/client.js:65:15)     at /home/riyasoni/riya/blockchain/workspace/fabric-samples/fabcar/node_modules/grpc/src/client.js:568:15 查询已完成,检查结果 来自query = {错误:2 UNKNOWN:chaincode错误(状态:500,消息:收到未知的调用函数名称 - 'readMarble')     at new createStatusError(/home/riyasoni/riya/blockchain/workspace/fabric-samples/fabcar/node_modules/grpc/src/client.js:65:15)     at /home/riyasoni/riya/blockchain/workspace/fabric-samples/fabcar/node_modules/grpc/src/client.js:568:15   代码:2,   元数据:元数据{_internal_repr:{}​​},   详细信息:'chaincode error(状态:500,消息:收到未知的调用函数名称 - \'readMarble \')'}

那么,任何人都可以建议我如何查询大理石演示相关功能和交易的分类帐?

2 个答案:

答案 0 :(得分:0)

如果查看marbles.go,第144-177行,您将看到可用函数名称的列表。 readMarble不是其中之一。您还会看到第176行返回错误消息。 return shim.Error(“Received unknown invoke function name - '”+ function +“'”)

答案 1 :(得分:0)

readMarble不是有效的函数。检查拼写是否正确。 另外,请确保可以从Invoke函数调用readMarble。