如何访问hyperledger composer中的底层Fabric代码?

时间:2018-04-22 01:12:30

标签: hyperledger-fabric hyperledger hyperledger-composer

我正在开发一个带有超级边缘作曲家的商业网络。我已经在作家网站composer playground上关注了教程,并且也制作了教程网络。现在我面临一个问题。在完成定义业务网络之后,如何获得生成的底层Fabric代码?我无法想出为什么必须直接拥有它的原因,但是如果出于任何原因,比如必须将Fabric代码提供给您已经开发了poc的客户,则需要具备该功能。 。 Fabric代码是否保存在某处?我查看了业务网络文件夹;模型,测试,业务网络本身只有子文件夹,生成存档文件后,只有一个扩展名为.bna的文件。没有任何与Fabric相关的东西!

感谢您的帮助。

2 个答案:

答案 0 :(得分:4)

作为业务网络部署的一部分,包含了一个可以解析模型文件,查询文件和acl文件的关联Composer运行时,它还能够执行您的事务处理器功能。在0.16.x中,这是通过使用Go Chaincode包含JavaScript VM实现来执行Composer运行时(用JavaScript编写)和事务处理器函数来实现的。在Fabric 1.1中,链代码可以原生编写,因为它现在支持Node.js链代码,因此Composer超过0.16.x(编写本文时目前为0.19.x)Composer利用这个以及它用来包含的所有Go链代码被删除,使用Javascript VM。它是解析模型,查询和acl文件的composer运行时,而事务处理器函数在node.js结构链代码容器中本机运行。什么都没有编译成Go。

答案 1 :(得分:2)

智能合约将以不同的方式保存在结构中,因为作曲家只是对它的抽象。您需要在对等体内搜索链码所在的位置。有一些chaincode related commands可以帮助您找到安装链代码的位置。对于客户端,如果您使用composer进行开发,则可以提供.bna文件,因为如果您使用的是作曲家,我不确定代码是否可以在结构级别轻松读取。