Hyperledger Composer - 如何在部署网络后检查链代码

时间:2017-09-16 08:40:26

标签: hyperledger hyperledger-composer

我是Hyperledger的新手,我昨天所做的是在我的Windows 10上安装了Oracle虚拟盒,然后是Ubuntu,其次是Composer先决条件,包括Docker Engine,Compose和其他所有内容。最后按照作曲家游乐场教程并部署了网络。

最终我无法理解的是 - 1.链码所在的位置,如果需要,我如何查询和直接修改? 2. Go lang是设置Hyperledger Fabric的先决条件,但是对于Hyperledger Composer来说,它并不是强制性的,如果Hyperledger Fabric(真正的区块链)也在我的机器上设置或者它只是一些模拟环境,我仍然感到困惑? 提前感谢您的答案。

2 个答案:

答案 0 :(得分:3)

我自己也在调查Hyperledger Fabric作曲家,希望这能回答你的问题:

  1. Hyperledger composer构建于Hyperledger Fabric框架的顶部。 在使用composer进行开发时,您不会生成链代码,实质上,超级分类器编写器是一些非常智能的链代码,可以读取和理解模型+事务文件。 Composer不是编译器,它不接受业务网络定义文件并生成链代码。

  2. 同样,由于您没有生成链代码,因此开发不需要Go。 Hyperledger结构确实在您的机器上设置。它是一个真正的Fabric,构成了构建器。

  3. 希望有所帮助,如果您需要,我很乐意进一步澄清。

答案 1 :(得分:2)

安装Hyperledger Composer的开发环境时,您安装了(在VirtualBox中)具有多个节点的HyperLedgerFabric V1网络。所以,是的,您确实在系统上设置了“真正的”区块链。您在JavaScript中编写的事务代码是您的链代码。 HyperLedger Composer使用(今天)一种名为DukTape的服务,使您的javascript编写的事务能够在Go chaincode环境中运行。

默认安装中的链代码位于lib文件夹内的network文件夹中。默认安装中的文件为sample.js,该文件与sample.cto文件夹中的network\models文件直接关联。 cto文件使用面向对象的类表示法定义您的资产,事件和事务。事务的类名与sample.js文件中的函数名相同。