Hyperledger Fabric 1.4: как зарегистрироваться для запуска событий с цепным кодом?

#node.js #hyperledger-fabric #blockchain

#node.js #hyperledger-fabric #блокчейн

Вопрос:

В моем цепном коде я создаю событие с помощью следующей команды

 ctx.stub.setEvent('sampleEvent', 'somedata');
  

Я хочу прослушать это событие в клиентском приложении, используя Node SDK.

У меня есть следующие вопросы,

  • Нужно ли мне использовать ChannelEventHub?

  • Если да, то откуда мне это импортировать / потребовать?

  • Какой модуль npm мне нужен?

  • Я полагаю, что channelEventHub имеет метод registerChaincodeEvent, есть ли какие-либо примеры того, как его использовать?

Ответ №1:

Я могу настоятельно рекомендовать эту страницу. Там вы также найдете руководства по его реализации.

Пакет, отвечающий за ChannelEventHub, является fabric-клиентом.

 npm install fabric-client
  

И использование этого в коде:

 var Fabric_Client = require('fabric-client');
  

Также вы, вероятно, захотите установить fabric-ca-client для регистрации пользователей. Как указано выше, вы найдете все необходимое на странице по предоставленной первой ссылке.

Надеюсь, это поможет!

Комментарии:

1. Это было то же самое руководство, которому я следовал, и, поскольку оно не помогло, я пришел сюда с просьбой о помощи. Но, тем не менее. вы сняли некоторые сомнения. Спасибо. И этот урок не очень полезен.

2. В руководстве говорится, что нужно использовать const channel_event_hub = channel.newChannelEventHub(‘peer0.org1.example.com ‘); Даже не упоминая, откуда импортировать канал. И затем, когда я импортировал канал из модуля Fabric-Client и попытался создать экземпляр ChannelEventHub с помощью данной команды, я получаю следующую ошибку TypeError: channel.newChannelEventHub не является функцией.

3. Поиграв с функциями модуля, я обнаружил, что это правильная команда для создания экземпляра ChannelEventHub —> const channelEventHub = new ChannelEventHub(‘mychannel’,’peer0.org1.example.com ‘); ChannelEventHub был импортирован из клиентского модуля Fabric. Надеюсь, это поможет всем, кто пытается зарегистрироваться для событий цепного кода.