首页 > 解决方案 > 执行查询交易时仅选择背书节点 - Node SDK

问题描述

有没有办法在调用setEndorsingPeers()时调用contract.evaluateTransaction()?还有其他方法可以实现吗?我遇到的问题如下:

我有两个组织,每个组织都有两个对等点:peer0peer1。但是,只有对等点 peer0是背书对等点。因此,在查询状态时,有时事务会到达对等节点peer1Error抛出 an。我在Querying chaincode is only successful in ~3/5 cases with nodejs找到了一种解决方法,但它需要我将所有对等方提升为认可对等方。我只提交同行的方法是否有效和正确?先感谢您。

PS 没有人在另一个线程上响应,我相信这是一个有效的单独问题,其解决方案不是那种解决方法。

标签: node.jshyperledger-fabricblockchainibm-blockchain

解决方案


我有同样的问题。下面是我的解决方案。

1)在连接配置文件上,确保设置哪个对等方是背书者/提交者:

    "channels": {
    "mychannel": {
        "orderers": [],
        "peers": {
            "peer0.example.com": {
                "endorsingPeer": true,
                "chaincodeQuery": true,
                "ledgerQuery": true,
                "eventSource": true
            },
            "peer1.example.com": {
                "endorsingPeer": false,
                "chaincodeQuery": false,
                "ledgerQuery": false,
                "eventSource": true
            }
        },
        "chaincodes": []
    }
},

2)使用fabric-network SDK查询:link

我希望这有帮助。


推荐阅读