首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

如何使用Hyperledger Fabric和Composer构建区块链网络(下)

测试我们的业务网络

现在我们的网络已在Fabric上运行,我们可以启动与它进行交互。要执行此操作,请在终端中键入并在浏览器中打开,你应该会看到与此类似的内容:

按立即连接,你将看到此屏幕:

定义页面是我们可以对代码进行更改,部署这些更改以升级网络以及导出业务网络存档的地方。

从顶部菜单转到页面,你会看到:

从参与者中选择,单击右上角附近的创建新参与者,然后创建一个类似于此的新:

来吧,让更多的。以下是我的三位交易员的名字,名字是哈迪克,约翰和泰隆(Haardik, John, and Tyrone)。

现在,让我们制作一些资产。点击左侧菜单中的,然后按创建新资产。请注意字段在这里特别有趣,看起来像这样:

这是一种关系。这就是的意思。我们指定确切的资源类型,后跟它们的唯一标识符和瞧,我们有一个关系指针。

继续完成一个类似于此的:

请注意字段如何指向 aka 。继续做几张牌,并让一对夫妇将设置为true。

请注意我的:。

现在,为了有趣的东西,让我们尝试交易卡:D。

点击左侧的提交交易,并将指向,指向如下所示:

按提交并查看你的,你会看到现在拥有所有者

生成REST API服务器

与进行交易很不错,但不是最佳的。我们必须为用户提供客户端软件,以便为他们提供无缝体验,他们甚至不必了解底层区块链技术。为此,我们需要一种更好的方式与我们的业务网络进行交互。值得庆幸的是,我们有模块来帮助我们。

在终端中键入,指定,选择,然后继续使用其余的默认选项,如下所示:

打开,你将看到自动生成的REST API的文档版本:D

生成使用REST API的Angular应用程序

还记得生成器吗?它不仅可以生成业务网络,还可以创建一个针对我们上面创建的REST API运行的Angular 4应用程序。

要创建Angular Web应用程序,请在终端中键入,选择,选择使用连接到现有的业务,并连接到现有的REST API。(编辑:软件的较新版本可能会要求提供卡片文件而不仅仅是卡片的名称)

这将继续运行,给它一分钟,一旦完成,你将能够加载并且会遇到类似这样的页面:

编辑:软件的较新版本可能要求你自己运行然后运行

你现在可以直接在此应用程序中使用你的网络,该网络通过端口3000上运行的REST服务器与网络进行通信。

恭喜!你只需使用Hyperledger Fabric和Hyperledger Composer设置你的第一个区块链业务网络:D

你可以向卡交易网络添加更多功能,在卡上设置价格并为所有提供余额。你还可以有更多交易,允许切换的值。你可以将其与非区块链应用程序集成,并允许用户购买添加到其帐户中的新卡,然后他们可以在网络上进一步交易。

KNOWN BUG:你的Angular Web应用程序是否无法正确处理交易?

在撰写本文时,角度生成器存在一个问题,即交易页面上的紫色调用按钮不执行任何操作。要解决此问题,我们需要对生成的角度应用程序进行一些更改。

1.按下按钮时打开模态

我们需要做的第一个改变是按钮打开模态窗口。代码已包含所需的模态窗口,该按钮只缺少和属性。

要解决此问题,请打开

文件名可能因你的名称而异。如果业务网络中有多个,则必须在所有事务资源类型HTML文件中执行此更改。

向下滚动直到最后,你会看到一个标签。继续将这两个属性添加到该标记:

所以这条线看起来像这样:

属性调用将所有输入字段设置为空,指定单击时要打开的模式窗口。

保存文件,打开浏览器,然后尝试按下调用按钮。它应该打开这个模态:

2. 删除不必要的字段

只是让模态打开是不够的。我们可以看到它向我们请求和,即使我们没有在我们的建模文件中添加这些字段。我们的网络存储所有交易固有的价值。所以,它应该能够自己找出这些值。事实证明,实际上确实如此。这些是备用字段,我们可以将它们注释掉,REST API将为我们处理剩下的事情。

在同一个文件中,向上滚动以查找输入字段并注释掉负责输入字段的

保存文件,打开浏览器,然后按“调用”。你应该看到这个:

你现在可以通过在这些字段中传递数据来创建交易。由于和是与其他资源的关系,我们可以进行如下交易:

按确认 ,返回资产页面,你将看到现在属于:

恭喜!你已在Hyperledger Fabric上成功构建并部署了区块链业务网络。你还为该网络生成了一个REST API服务器,并学习了如何创建与该API交互的Web应用程序。

文章来自官方博客:

  • 发表于:
  • 原文链接https://kuaibao.qq.com/s/20190113G0Y6PX00?refer=cp_1026
  • 腾讯「腾讯云开发者社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 cloudcommunity@tencent.com 删除。

扫码

添加站长 进交流群

领取专属 10元无门槛券

私享最新 技术干货

扫码加入开发者社群
领券