首页 > 编程知识 正文

到底什么是区块链技术,区块链技术入门

时间:2023-05-06 06:15:31 阅读:160969 作者:642

商务层区块链APP应用的开发

Hyperledger fabric目前支持java、nodejs、go和python语言的sdk,用户以不同的语言开发上层APP应用,并使用相应的sdk调用部署在块链上的链码下面的示例选择使用go语言开发业务层APP公司。

步骤结构SDK设置

hyperledger结构官方提供了所需的go sdk文件包。 BCS服务器当前使用的版本commit编号为035e4f9。

您需要生成组织证书以访问结构SDK中的相应配置文件和块链节点。 SDK配置文件主要包含要访问的链代码的名称/版本、解压证书的目录位置、实例化链代码的通道以及安装链代码的节点的组织/名称。 在订购的区块链服务状态下,单击“下载SDK设置”,将显示设置窗口,SDK设置完成。

SDK配置文件下载界面

配置SDK文件下载界面

在订购的区块链服务状态列表页面中可以看到各个节点的状态和相应的证书下载功能。 相关证书必须下载到sdk配置文件中指定的目录,以便业务APP应用程序可以成功与块链节点进行通信。 显示了orderer节点和peer节点的证书下载链接。

订单节点和人员节点证书下载

步骤2 :编写业务APP代码

在合理配置sdk与块链节点peer的通信后,业务层APP应用码只需对接链码的invoke和query方法。 以下示例使用sdk提供的接口channel客户端。 加载sdk配置文件以生成sdk实例,传递通道名称和用户信息以生成ChannelClient对象,最后开始使用ChannelClient执行链码的事务。

在业务APP代码中定义链码的数据结构ChainCodeSpec,并在初始化ChannelClient时赋值,包括ChannelClient对象、用户信息和链码名称。 通过将链码的invoke和query方法定义为结构方法,可以在交易开始时轻松完成数据传输

步骤3 :测试业务APP代码

让我们简单地定义main方法来测试代码。 首先,声明链码管理站点中实例化的链码信息:链码名称chaicodetest、实例化通道名称testchannel,用户使用组织中的普通用户。 然后定义两种测试方法来创建测试实例和查询测试用例。

要创建测试用例create_testcases,请依次传递项目名称、模块名称、测试用例名称和测试用例描述这四个参数,然后调用invoke方法将事务写入块链查询测试用例query_testcases方法,传递项目和模块名称,然后查询测试用例信息。

然后,当您使用go run运行此测试用例时,可以看到将生成一个testchannel实例,并与块链节点建立了连接。 登录到块链节点并使用“docker logs容器id”命令,可以验证事务是否正常以及链代码是否正确存储了以前用例的复合键值索引,从而验证每个事务链码容器还可以检查以前用链码打印的日志,以确定是否可以正确查询测试用例。

在块链节点peer上查看执行结果

链码的执行结果

本文通过一个简单的示例说明了xyx520928如何通过华为云提供的区块链服务快速开发和构建APP应用。 根据需要的场景,用户可以根据本文的示例引入区块链服务器,开发链码和业务层的APP。

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。