ITPub博客

首页 > 数据库 > 数据库开发技术 > NFT数字藏品系统开发源码部署丨NFT链游元宇宙游戏系统开发源码搭建

NFT数字藏品系统开发源码部署丨NFT链游元宇宙游戏系统开发源码搭建

原创 数据库开发技术 作者:Tg_StPv888 时间:2023-02-02 14:42:59 0 删除 编辑

什么是NFT?
在我看来,NFT是Web3世界中标记数据资产独特性的标识,是数据权益的载体。不论是数字化的画作,桌椅、服装、汽车飞机等(有实物的),还是数字化的身份凭证、产权、公司品牌等(逻辑产物)都可以是NFT。

独特性的标识为什么这么重要呢?因为它能将其指代的物品和其他同类物品区分开。 为了进一步理解,首先要明确,有些物品是非同质的(Non-Fungible)需要被区分开的,例如房屋产权和艺术作品。有些物品是同质的,不需要被区分开,例如人民币和app积分,尽管有不同的编码,但编码不影响互相替换,因为面值一样;其次要区分开标识和标的物,标的物可以是区块链上原生的数据或者本身是数字化的,也可以是物理世界实际存在的物品,标识则是标的物在数字世界中的映射。

 

  业务逻辑invoke函数实现了业务逻辑中的资产转移,将A的资产转移X个单位给B。

 

  //将A的资产转移X个单位给B的交易

 

  //invoke实现了两个键之间的value转移,输入参数为KEY1_NAME,KEY2_NAME,VALUE

 

  func(t*SimpleChaincode)invoke(stub shim.ChaincodeStubInterface,args[]string)peer.Response{

 

  var A,B string//Entities

 

  var Aval,Bval int//Asset holdings

 

  var X int//Transaction value

 

  var err error

 

  if len(args)!=3{

 

  return shim.Error("Incorrect number of arguments.Expecting 3")

 

  }

 

  A=args[0]

 

  B=args[1]

 

  //获取A、B的当前资产情况

 

  Avalbytes,err:=stub.GetState(A)

 

  if err!=nil{

 

  return shim.Error("Failed to get state")

 

  }

 

  if Avalbytes==nil{

 

  return shim.Error("Entity not found")

 

  }

 

  Aval,_=strconv.Atoi(string(Avalbytes))

 

  Bvalbytes,err:=stub.GetState(B)

 

  if err!=nil{

 

  return shim.Error("Failed to get state")

 

  }

 

  if Bvalbytes==nil{

 

  return shim.Error("Entity not found")

 

  }

 

  Bval,_=strconv.Atoi(string(Bvalbytes))

 

  //执行

 

  X,err=strconv.Atoi(args[2])

 

  if err!=nil{

 

  return shim.Error("Invalid transaction amount,expecting a integer value")

 

  }

 

  //业务逻辑:实现资产的转移

 

  Aval=Aval-X

 

  Bval=Bval+X

 

  fmt.Printf("Aval=%d,Bval=%dn",Aval,Bval)

 

  //将更新后的资产更新到账本中

 

  err=stub.PutState(A,[]byte(strconv.Itoa(Aval)))

 

  if err!=nil{

 

  return shim.Error(err.Error())

 

  }

 

  err=stub.PutState(B,[]byte(strconv.Itoa(Bval)))

 

  if err!=nil{

 

  return shim.Error(err.Error())

 

  }

 

  return shim.Success(nil)

 

  }


来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/70016646/viewspace-2933741/ ,如需转载,请注明出处,否则将追究法律责任。

请登录后发表评论 登录
全部评论
专业区块项目开发团队:18028578624微電

注册时间:2022-04-13

  • 博文量
    158
  • 访问量
    95693