У меня есть сеть из двух одноранговых узлов: A и B. Мне нужно, чтобы приложение A отправляло транзакцию tx1 только одноранговому узлу A (и мне удалось выполнить setEndorsingPeers
и изменить политики в configtx.yaml), но мне нужно это приложение B регистрируется для определенного события контракта c, которое запускается во время функции от tx1 до SetEvent("get",data)
.
Ниже показано, как я реализовал прослушиватель в приложении B:
const listener = await contract.addContractListener (event) => {
if (event.eventName === 'get') {
var response = event.payload.toString('utf8');
console.log(response)
}
}
Когда я запускал приложение B, я знал, что await
приостановил бы процесс до тех пор, пока событие не исчезнет. прибывший. Собственно, этого не происходит, и казнь доходит до конца. Это представляет проблему, потому что приложение B не получает событие в полезное время.
Итак, я хотел бы спросить, неправильно ли я что-то интерпретирую, и если нет, то почему это происходит?