无法找到newEventHub函数

时间:2018-07-20 06:14:45

标签: node.js hyperledger-fabric

我是Hyperledger面料的新手。我已经下载了Fabric v1.2.0,并且尝试从fabric-sample文件夹运行fabcar示例。我对chaincode的查询进行得很好,但是当我尝试调用chaincode时,我从cmd中收到以下错误。

这是我对锁码的要求

var request = {
    //targets: let default to the peer assigned to the client
    chaincodeId: 'fabcar',
    fcn: 'changeCarOwner',
    args: ['CAR4', 'Dave'],
    chainId: 'mychannel',
    txId: tx_id
};

错误:

  

无法成功调用:: TypeError:fabric_client.newEventHub不是函数

当我尝试在 index.t.ds 中找到newEventHub时,找不到该函数。有人可以帮我吗?谢谢。

2 个答案:

答案 0 :(得分:20)

我认为他们已经将ChannelEventHub替换为EventHub类。

您可以使用以下命令更新invoke.js文件:

第105行:

let event_hub = channel.newChannelEventHub('localhost:7051');
// event_hub.setPeerAddr('grpc://localhost:7053');

第130行:

console.log('The transaction has been committed on peer ' + event_hub.getPeerAddr());

那应该解决它。

答案 1 :(得分:4)

在package.json中将fabric-client npm版本从“不稳定”更改为^ 1.2.1 并运行npm install