作者: 李佶澳 转载请保留:原文地址 发布时间:2018/07/17 10:20:00
说明
这是网易云课堂“IT技术快速入门学院”使用的素材。
这里演示合约的用法,合约代码托管在在Github上:合约代码。
怎样写合约参考: 超级账本HyperLedger:Fabric Chaincode(智能合约、链码)开发方法
Example-1:demo
example-1: demo中演示了最基本、最常用的方法,可以通过这个合约进行下面操作:
func (t *Chaincode) Invoke(stub shim.ChaincodeStubInterface) pb.Response {
function, args := stub.GetFunctionAndParameters()
switch function {
//返回调用者信息
case "creator":
return t.creator(stub, args)
//调用改合约中的其它方法,用来演示复杂的调用
case "call":
return t.call(stub, args)
//直接对key的内容进行append,用来演示这样操作的结果
case "append":
return t.append(stub, args)
//读取当前用户的属性值
case "attr":
return t.attr(stub, args)
//查询一个key的当前值
case "query":
if len(args) != 1 {
return shim.Error("parametes's number is wrong")
}
return t.query(stub, args[0])
//查询一个key的所有历史值
case "history":
if len(args) != 1 {
return shim.Error("parametes's numb