Цепной код, запрашивающий цепной код на отдельных каналах

#node.js #hyperledger-fabric

#node.js #hyperledger-fabric

Вопрос:

У меня есть два канала, каждый с цепным кодом, канал1 с цепным кодом1 и канал2 с цепным кодом2. Я пытаюсь запросить ресурс на канале 1 из канала 2. Вот часть моего кода из chaincode2

 return stub.invokeChaincode(CC1, sendArgs, CHANNEL1).then((resp) => {
        console.info(`resp: ${resp}`);
        return shim.success("yay!")
    }).catch((err) => {
        console.info(`Err: ${err}`);
        return shim.error(`Err: ${err}`);
    });  
  

Из журналов docker я вижу, что это успешно вызывает другой цепной код, однако ошибка все еще возвращается: Calling chaincode Invoke() returned error response [Err: Error: INVOKE_CHAINCODE failed: transaction ID: 665167f6a938d84060ca7e7678e1d36e7e638beee1a359e1ae315f00e315364c: Failed to get policy manager for channel [channel1]]. Sending ERROR message back to peer

Любая помощь была бы высоко оценена. Спасибо

Ответ №1:

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

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

1. Это часть канала 1, у меня есть тот же узел, добавляющий данные в канал 1