Fabric Hyperledger实战:用Go语言搭建Web应用与区块链进行交互
二次开发 admin 发布时间:2022-11-24 10:26:58 浏览: 次
简而言之,Hyperledger Fabric 是IBM开源的一套区块链的解决方案。Fabric相比其他联盟链方案最大的优势有几点,
一是原生自带的MSP(Member Service Provider),即人员组织权限管理,二是网络节点拓扑图原生符合联盟链的组织关系需求,
三是各个模块的可插拔,对开发人员比较友好。公共链领域,比特币依然一骑绝尘,以太坊紧跟其后,企业级商用方案百花齐放,但是IMB的Hyperledger正在逐渐成为联盟链方案的首选。
本文不再重复Hyperledger的环境搭建等基础问题,以一个实战的例子构造一个基于Fabric Car的一个web应用。
准备工作:Fabric 环境已经搭好。Fabcar Chaincode已经安装就绪。
服务器环境如下:
Centos 7.9
Docker 20.10.21
Go 1.17
Fabric Hyperledger 2.1
如果安装了宝塔,也可以用宝塔配合安装。
本文用Go语言首先构造一个Web应用框架,主要实现2个小功能:
1 查询区块链中的所有汽车
2 根据关键词查询符合条件的汽车。
主要代码:
main.go
func main() {
http.HandleFunc("/query", query)
http.HandleFunc("/", welcome)
http.HandleFunc("/querysingle", querysingle)
http.HandleFunc("/singleresult", singleresult)
fmt.Println("server is starting http://localhost:39100")
err := http.ListenAndServe(":39100", nil)
if err != nil {
fmt.Println("error: ", err)
}
}
其他均为html代码。
不再赘述,直接上图。