Как получить доступ к базовому коду Fabric в hyperledger composer?
Я занимаюсь разработкой бизнес-сети с композитором Hyperledger. Я следовал учебному пособию на веб-сайте композитора на площадке для композиторов, а также создал учебную сеть. Теперь я сталкиваюсь с одной проблемой. после завершения определения вашей бизнес-сети, как можно получить базовый сгенерированный код Fabric? Я не могу придумать причину, по которой необходимо иметь его напрямую, но, скажем, если по какой-то причине, например, для того, чтобы дать код Fabric своему клиенту, для которого вы разработали документ, вам это нужно. Тканевый код сохраняется где-нибудь? Я посмотрел в папку бизнес-сети; есть только подпапки для моделей, тестов, самой бизнес-сети, и после создания файла архива остается только один файл с расширением.bna. Ничего общего с Тканью там нет!
Я ценю вашу помощь.
2 ответа
В рамках развертывания вашей бизнес-сети включена связанная среда выполнения Composer, которая может анализировать файлы моделей, файлы запросов и файлы acl, а также способна выполнять функции процессора транзакций. В версии 0.16.x это было достигнуто путем включения реализации виртуальной машины JavaScript с использованием Go Chaincode для выполнения среды выполнения Composer (написанной на JavaScript) и функций процессора транзакций. В Fabric 1.1 цепной код может быть написан изначально, так как теперь он поддерживает цепной код Node.js, так что с Composer за 0.16.x (в настоящее время 0.19.x на момент написания) Composer использует это, и весь цепной код Go, который он содержал, был удален вместе с с Javascript VM. Это среда выполнения компоновщика, которая анализирует файлы модели, запроса и acl, а функции процессора транзакций выполняются непосредственно внутри контейнера цепочки кода узла node.js. Ничего не скомпилировано для Go.
Умный контракт будет сохранен по-разному в ткани, так как композитор - просто абстракция над ним. Вам нужно найти место, где цепочечный код присутствует внутри однорангового узла. Существуют некоторые команды, связанные с цепочкой кодов, которые могут помочь вам узнать, где установлен код цепочки. И клиенту вы можете передать файл.bna, если вы используете для разработки composer, потому что я не уверен, будет ли код легко читаемым на уровне фабрики, если вы используете composer.