fabric学习笔记11
fabric学习笔记10
20201303张奕博 2023.1.23
测试实践2
导入链码依赖包
package main
import (
"github.com/hyperledger/fabric/core/chaincode/shim"
"github.com/hyperledger/fabric/protos/peer"
"fmt"
)
(3)编写主函数
func main() {
err := shim.Start(new(HelloChaincode))
if err != nil {
fmt.Printf("Chaincode start err: %v", err)
}
}
(4)自定义结构体
type HelloChaincode struct {
}
具体代码如下:
// 实例化/升级链码时被自动调用
// -c '{"Args":["Hello","World"]'
func (t *HelloChaincode) Init(stub shim.ChaincodeStubInterface) peer.Response {
fmt.Println("实例化....")
_, args := stub.GetFunctionAndParameters()
// 判断参数长度是否为2个
if len(args) != 2 {
return shim.Error("Args Err!")
}
fmt.Println("Save data......")
// 通过调用PutState方法将数据保存在账本中
err := stub.PutState(args[0], []byte(args[1]))
if err != nil {
return shim.Error("Save data err...")
}
fmt.Println("实例化成功")
return shim.Success(nil)
}
-
3.构建并启动链码
-
4.测试